OpenJudge 803 逆波兰表达式

地址:http://nenu.openjudge.cn/09jiaoji/803/

思路:递归,分治

 1 #include<stdio.h>

 2 #include<stdlib.h>

 3 #include<math.h>

 4 double exp()

 5 {

 6     char a[10];

 7     scanf("%s",a);

 8     switch(a[0])

 9     {

10         case '+':  return exp()+exp();

11         case '-':  return exp()-exp();

12         case '*':  return exp()*exp();

13         case '/':  return exp()/exp();

14         default: return atof(a);   //atof(str)把字符串转换为一个double类型的浮点数

15     }

16 }

17 int main()

18 {

19     double ans;

20     ans=exp();

21     printf("%f\n",ans);

22     system("pause");

23     return 0;

24 }

25     

你可能感兴趣的:(open)