解题思路:在if从句中写一行代码就运行一下,让计算机计算出上个区间的利润再加上,末尾的10000,17500等均是上一次输入100000,200000所得结果其他后缀的利润皆如此。

注意事项:

参考代码:

#include<iostream>

using namespace std;

int main()

{

double profit,bonus;

cin >> profit;

if (profit <= 100000)

bonus = profit * 0.1;

else if (profit <= 200000)

bonus = (profit - 100000) * 0.075 + 10000;

else if (profit <= 400000)

bonus = (profit - 200000) * 0.050 + 17500;

else if (profit <= 600000)

bonus = (profit - 400000) * 0.030 + 27500;

else if (profit <= 1000000)

bonus = (profit - 600000) * 0.015 + 33500;

else 

bonus = (profit - 1000000) * 0.010 +39500;

cout << bonus << endl;

return 0;

}


点赞(0)
 

0.0分

2 人评分

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

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

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

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

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

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

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

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

评论列表 共有 2 条评论

Cpp 1年前 回复TA
@Cpp 我知道了,乘法都算错了
Cpp 1年前 回复TA
#include <iostream>
using namespace std;

int main()
{
	double a,b;
	cin >> a;
	if (a <= 100000)
		b = a * 0.1;
	else if (a > 100000 && a <= 200000)
		b = 10000 + (a - 100000) * 0.075;
	else if (a > 200000 && a <= 400000)
		b = 10000 + 7500 + (a - 200000) * 0.05;
	else if (a > 400000 && a <= 600000)
		b = 10000 + 7500 + 10000 + (a - 400000) * 0.03;
	else if (a > 600000 && a <= 1000000)
		b = 10000 + 7500 + 10000 + 12000 + (a - 600000) * 0.015;
	else if (a > 1000000)
		b = 10000 + 7500 + 10000 + 12000 + 6000 + (a - 1000000) * 0.01;
	cout << b << endl;
	return 0;
}
这哪里错了啊?