原题链接:[编程入门]利润计算
解题思路:
根据输入x的范围,使用if-else语句判断每一种情况。
注意事项:
1.奖金可提 表示 奖金的利润率,需要转为 小数(也可以使用%表示); 2.每一项的奖金利率不同; 3.后一个分支 可以 由前一个分支构成(需要把原x的位置 替换为 原上限值),然后在最前面(或者最后面)加上一项涉及该变量的项。
参考代码:
#include<iostream>
using namespace std;
int main(){
int x, y;
cin >> x;
if(x <= 100000)
y = x * 0.1;
else if(x < 200000)
y = (x - 100000) * 0.075 + 100000 * 0.1;
else if(x < 400000)
y = (x - 200000) * 0.05 + (200000 - 100000) * 0.075 + 100000 * 0.1;
else if(x < 600000)
y = (x - 400000) * 0.03 + (400000 - 200000) * 0.05 + (200000 - 100000) * 0.075 + 100000 * 0.1;
else if(x < 1000000)
y = (x - 600000) * 0.015 + (600000 - 400000) * 0.03 + (400000 - 200000) * 0.05 + (200000 - 100000) * 0.075 + 100000 * 0.1;
else
y = (x - 1000000) * 0.01 + (1000000 - 600000) * 0.015 + (600000 - 400000) * 0.03 + (400000 - 200000) * 0.05 + (200000 - 100000) * 0.075 + 100000 * 0.1;
cout << y;
return 0;
}0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
你这个不便于书写 #include<iostream> #define A 100000 #define B 200000 #define C 300000 #define D 400000 #define E 500000 #define F 600000 #define G 1000000 using namespace std; int main() { int l,j; cin>>l; if(l<=A)cout<<l*0.1<<endl; else if(l>A&&l<=B)cout<<A*0.1+(l-A)*0.075<<endl; else if(l>B&&l<=D)cout<<A*0.1+A*0.075+(l-B)*0.05<<endl; else if(l>D&&l<=F)cout<<A*0.1+A*0.075+B*0.05+(l-D)*0.03<<endl; else if(l>F&&l<=G)cout<<A*0.1+A*0.075+B*0.05+B*0.03+(l-F)*0.015<<endl; else cout<<A*0.1+A*0.075+B*0.05+B*0.03+D*0.015+(l-G)*0.01<<endl; return 0; }