解题思路:
根据输入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.0分

2 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

哈哈哈 2年前 回复TA
你这个不便于书写
#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;
 }