原题链接:[编程入门]利润计算
解题思路:
本题总共有6种情况,分别是:
1. 利润低于或等于100000元时
即i<=100000
2. 利润高于100000元,低于或等于200000元时
即100000<i≤200000
3. 利润高于200000元,低于或等于400000元时
即200000<i≤400000
4. 利润高于400000元,低于或等于600000元时
即400000<i≤600000
5. 利润高于600000元,低于或等于1000000元时
即600000<i≤1000000
6. 利润高于1000000元时
即i>1000000
注意事项:
分清情况,注意代码的整洁性,还有就是公式别用错。因为这个题解运用了定义整型常量的方法,所以省去了冗杂的0的书写,使代码变得整洁、简便地同时,缩短了代码的编译时间。
参考代码:
#include "stdio.h" int main() { int i,r; const int B=100000; scanf("%d",&i); if(i<=B)//利润低于或等于100000元时 { r=i*0.1; } else if(i>B && i<=(2*B)) //利润高于100000元,低于或等于200000元时 { r=0.1*B+(i-B)*0.075; } else if(i>(2*B) && i<=(4*B)) //利润高于200000元,低于或等于400000元时 { r=0.1*B+0.075*B+(i-2*B)*0.05; } else if(i>(4*B) && i<=(6*B)) //利润高于400000元,低于或等于600000元时 { r=0.1*B+0.075*B+0.05*2*B+(i-4*B)*0.03; } else if(i>(6*B) && i<=(10*B)) //利润高于600000元,低于或等于1000000元时 { r=0.1*B+0.075*B+0.05*2*B+0.03*2*B+(i-6*B)*0.015; } else if(i>(10*B)) //利润高于1000000元时 { r=0.1*B+0.075*B+0.05*2*B+0.03*2*B+4*B*0.015+((i-10*B)*0.01); } printf("%d",r); return 0; }
0.0分
53 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复