21 条题解
-
31
这题简单,我也同样提供两种方法,但是两种方法的思路一样,但方法不一样,来先看看思路吧!
- 输入 double 型变量 n
- 按照税金的条件判断,运用 if - else if - else 语句进行判断
- 输出的格式要是两位小数,大家都做过前面的题了,我就不多说了哈,况且下面的MOD也讲了其中的一种方法了,也可以去首页看。
接下来就是两个方法的区别了
方法①:在条件判断里直接输出
#include <bits/stdc++.h> using namespace std; int main() { double n; cin >> n; if (n >= 10000) printf("Tax=%.2lfyuan", n * 0.05); else if (n >= 5000) printf("Tax=%.2lfyuan", n * 0.03); else if (n >= 1000) printf("Tax=%.2lfyuan", n * 0.02); else cout << "Tax=0.00yuan"; return 0; }
方法②:把乘以的数存储在变量里再统一输出(UP推荐)
#include <bits/stdc++.h> using namespace std; int main() { double n, s = 0; cin >> n; if (n >= 10000) s = 0.05; else if (n >= 5000) s = 0.03; else if (n >= 1000) s = 0.02; printf("Tax=%.2lfyuan", n * s); return 0; }
-
5
这道题其实很简单,只要先根据题目信息判断每种情况应收的税金是多少,然后再分段按照格式输出税金就行了,请看题解:(已AC,请放心食用( •̀ ω •́ )✧)
#include <iostream> #include <iomanip> using namespace std; int main() { double n, b; cin >> n; if (n >= 10000) { b = n / 20; } else if (n >= 5000) { b = n / 100 * 3; } else if (n >= 1000) { b = n / 50; } else { b = 0; } cout << "Tax="; cout << fixed << setprecision(2) << b; cout << "yuan"; return 0; }
看完后别忘了点个赞哟~
-
1
#include <iostream> #include <iomanip> using namespace std; int main() { double n, b; cin >> n; if (n >= 10000) //有谁想~~偷税漏税~~吗 { b = n / 20; } else if (n >= 5000) { b = n / 100 * 3; } else if (n >= 1000) { b = n / 50; } else { b = 0; } cout << "Tax=" << fixed << setprecision(2) << b << "yuan"; return 0; }
-
1
#include <bits/stdc++.h> using namespace std; int main() { double n;//有小数用double类型 cin >> n; if(n<1000) { cout << "Tax=0.00yuan";//免税直接输出0.00元; } else if(n<5000) { printf("Tax=%.2lfyuan",0.02*n)//输出2%的征税,并保留两位小数 } else if(n<10000) { printf("Tax=%.2lfyuan",0.03*n); } else { printf("Tax=%.2lfyuan",0.05*n); } return 0; } 点赞哦!!!
-
1
这个题 没什么好说的,直接使用if-else if 一一去判断就好
根据输出样例注意输出的格式
保留小数cout << fixed << setprecision(x) << a; x代表表示保留几位
if(n>=10000)//定义n的时候一定要是浮点数类型,要不然会有一个样例过不去 { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.05<<"yuan"; } else if(n>=5000) { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.03<<"yuan"; } else if(n>=1000) { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.02<<"yuan"; } else { cout<<"Tax=0.00yuan"; }
-
0
#include <bits/stdc++.h> using namespace std; int main() { double n; cin>>n; if(n>10000) { cout<< fixed << setprecision(2) <<"Tax="<<n*0.05<<"yuan"; } else if((n>=5000)&&(n<10000)) { cout<< fixed << setprecision(2) <<"Tax="<<n*0.03<<"yuan"; } else if((n<5000)&&(n>=1000)) { cout<< fixed << setprecision(2) <<"Tax="<<n*0.02<<"yuan"; } else { cout<< fixed << setprecision(2) <<"Tax="<<n-n<<"yuan"; } return 0; }
-
0
看别人都用的一个变量,感觉重复太多,我个人认为两个变量更好些
</span>#include <bits/stdc++.h> using namespace std; int main() { double n,x;//一定要用double类型,否则不能AC cin >> n; if (n >= 10000){ x = n * 0.05; } else if ((n < 10000) && (n >= 5000)){ x = n * 0.03; } else if ((n < 5000) && (n >= 1000)){ x = n * 0.02; } else{ x = 0; } cout << fixed << setprecision(2);//保留两位小数 cout << "Tax=" << x << "yuan"; return 0; }
-
-1
#include <bits/stdc++.h> using namespace std; int main() { double n,qsum=0;//qsum:交税总和。 cin>>n; char a[4]={'T','a','x','='}; char b[4]={'y','u','a','n'}; if(n>=10000) { qsum=n*0.05; } if(n>=5000 && n<10000) { qsum=n*0.03; } if(n>=1000 && n<5000) { qsum=n*0.02; } if(n<1000) { qsum=qsum*1.00; } for(int i=0;i<4;i++) { cout<<a[i]; } cout<<fixed<<setprecision(2)<<qsum; for(int i=0;i<4;i++) { cout<<b[i]; } return 0; }
-
-1
#include <bits/stdc++.h> using namespace std; int main() { double n; cin>>n; if(n>=10000) { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.05<<"yuan"; } else if(n>=5000) { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.03<<"yuan"; } else if(n>=1000) { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.02<<"yuan"; } else { cout<<"Tax=0.00yuan"; } return 0; }
-
-1
cout<<"Tax="; if(a>=10000) { printf("%.2lf",a*0.05); cout<<"yuan"; } else { if(a>=5000) { printf("%.2lf",a*0.03); cout<<"yuan"; } else { if(a>=1000) { printf("%.2lf",a*0.02); cout<<"yuan"; } else { printf("%.2lf",a*0.0); cout<<"yuan"; } } }
再使用printf和scanf是,注意: 1,printf的格式: printf("%.xlf",s);//x为小数位数 2,scanf的格式: scanf("%.xlf",&s)//一定要有‘&’
-
-4
#include <bits/stdc++.h> using namespace std; int main() { double n; cin>>n; if(n>=10000) { cout<<"Tax="<<fixed<<setprecision(2)<<n0.05<<"yuan"; } else if(n>=5000) { cout<<"Tax="<<fixed<<setprecision(2)<<n0.03<<"yuan"; } else if(n>=1000) { cout<<"Tax="<<fixed<<setprecision(2)<<n*0.02<<"yuan"; } else { cout<<"Tax=0.00yuan"; } return 0; }
信息
- ID
- 1127
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 5
- 标签
- 递交数
- 3291
- 已通过
- 1299
- 上传者