就是个简单的if else判断功能的水题目
思路 :就是读取、计算、利用判断语句
难点:我在做的时候判断是否是浮点小数那边出了点问题,因为我初始设置是double 所以输出的时候我强制类型转化为int 这是一个题目的要求。
ac代码
#include <iostream> #include<math.h> #include <iomanip> #include<cstdio> #include<string> #include<map> #include<vector> #include<algorithm> #include<stdlib.h> using namespace std; int main() { int n; cin>>n; while(n--){ char s; double a; double b; double sum; cin>>s>>a>>b; if(s=='+'){ sum=a+b; } else if(s=='-'){ sum=a-b; } else if(s=='*'){ sum=a*b; } else{ sum=a/b; } if(sum==(int)sum){ cout<<(int)sum<<endl; }else { cout<<fixed<<setprecision(2)<<sum<<endl; } } return 0; }
然后 我看了下别人写的代码,感觉还是比较精炼的,少了一步我的判断
#include <iostream> #include<iomanip> using namespace std; int main(void) { int t,a,b; char operands; cin>>t; for(int i=0; i<t; i++) { cin>>operands>>a>>b; switch(operands) { case '+': cout<<a+b<<endl; break; case '*': cout<<a*b<<endl; break; case '-': cout<<a-b<<endl; break; case '/': if(a%b==0) cout<<a/b<<endl; else cout<<setiosflags(ios::fixed)<<setprecision(2)<<(float)a/b<<endl; break; } } return 0; }
后一部分代码转自:http://blog.csdn.net/always2015/article/details/45332923