网上没找见c的,自己写了一个,不止适用2位数
描述
两位正整数的简单算术运算(只考虑整数运算),算术运算为:
+,加法运算;
-,减法运算;
*,乘法运算;
/,整除运算;
%,取余运算。
算术表达式的格式为(运算符前后可能有空格):
运算数 运算符 运算数
请输出相应的结果。
输入
一行算术表达式。
输出
整型算数运算的结果(结果值不一定为2位数,可能多于2位或少于2位)。
样例输入
32+64
样例输出
96
#include#include #include char x[10000]; int main() { int a, b=0,i=0,count=0; char c; scanf("%d", &a);//第一个数可以直接输入 gets(x);//第一个数之后就可能有空格,当作字符输入 for (;; i++) if (*(x + i) != ' ') { c = *(x + i); break; }//找运算符,找到后赋值给c i = strlen(x)-1;//从字符串后面开始算第二个数 while(*(x+i)!=' '&&x[i]<='9'&&x[i]>='0')//后两个条件主要是防止“a +b”这样的 { b = b + (*(x + i) - '0') * pow(10, count); i--; count++; //把b算出来 } //输出 if (c == '+')printf("%d", a + b); else if (c == '-')printf("%d", a - b); else if (c == '*')printf("%d", a * b); else if (c == '/')printf("%d", a / b); else if (c == '%')printf("%d", a % b); return 0; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)