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