杭電1170
阿新 • • 發佈:2017-05-06
簡單 == while tail pan 分代 out set 初始
就是個簡單的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
杭電1170