题目描述
解题思路
#include<iostream>
#include<cstdio>
using namespace std;
int main() {
int n;
cin>>n;
char a;
int b,c;
for(int i=0; i<n; i++) {
bool flag=false;
cin>>a>>b>>c;
double re;
if(a=='+')
cout<<b+c<<endl;
else if(a=='-') {
cout<<b-c<<endl;
} else if(a=='*')
cout<<b*c<<endl;
else if(a=='/') {
re=1.0*b/c;
if(re!=b/c)
printf("%.2lf\n",re);
else
cout<<b/c<<endl;
}
}
return 0;
}
//出错地方
//若
//各种运算符的结果都赋给re 而不是直接输出
//就会出现wa
//分析错误原因 暂时如下
//最后一句 输出要求 If and only if it is not an integer
//表明若为整数则输出整数 非整数四舍五入保留两位小数
//因此 用int+(-、*)int=int AC
//int +(-、*)int=double WA