码迷,mamicode.com
首页 > 其他好文 > 详细

Openjudge-计算概论(A)-简单算术表达式求值

时间:2015-02-17 22:13:36      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

描述:

两位正整数的简单算术运算(只考虑整数运算),算术运算为:

+,加法运算;
-,减法运算;
*,乘法运算;
/,整除运算;
%,取余运算。

算术表达式的格式为(运算符前后可能有空格):
运算数 运算符 运算数

请输出相应的结果。

输入一行算术表达式。输出整型算数运算的结果(结果值不一定为2位数,可能多于2位或少于2位)。

样例输入

32+64

样例输出

96
思路:使用字符串,从前往后扫,直至结束,把符号提出来,进行运算。
注意:输入时一定要用gets(char)库函数,否则会报错的!
代码如下:
 1 #include<stdio.h>
 2 int main()
 3 {
 4     char str[50],c;
 5     int a=0,b=0,res,i=0;
 6     int flag=1;
 7     gets(str);
 8     while(str[i]!=\0)
 9     {
10         if(str[i]>=0&&str[i]<=9)
11         {
12             if(flag==1)
13             {
14                 a=a*10+str[i]-0;
15             }
16             else
17             {
18                 b=b*10+str[i]-0;
19             }
20         }
21         else if(str[i]!= )
22         {
23             c=str[i];
24             flag++;
25         }
26         i++;
27     }
28     switch(c)
29     {
30         case +:
31             res=a+b;
32             break;
33         case -:
34             res=a-b;
35             break;
36         case *:
37             res=a*b;
38             break;
39         case /:
40             if(b==0) return 0;
41             res=a/b;
42             break;
43         case %:
44             if(b==0) return 0;
45             res=a%b;
46             break;
47     }
48     printf("%d\n",res);
49     return 0;
50 }

 

 

Openjudge-计算概论(A)-简单算术表达式求值

标签:

原文地址:http://www.cnblogs.com/geek-007/p/4295473.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!