|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- int main()
- {
- int a,s;scanf("%d",&s);
- a=s-3500;
- if(a<=0) printf("%d",s);
- else if(a<=1500) printf("%d",3500+a*(1-0.03));
- else if(a<=4500) printf("%d",3500+1500*(1-0.03)+(a-1500)*0.9);
- else if(a<=9000) printf("%d",3500+1500*0.97+3000*0.9+(a-4500)*0.8);
- else if(a<=35000) printf("%d",3500+1500*0.97+3000*0.9+4500*0.8+(a-9000)*0.75);
- else printf("%d",3500+1500*0.97+3000*0.9+4500*0.8+26000*0.75+(a-35000)*0.7);
- return 0;
- }
复制代码
为什么输入3500以上就不正确
哪里有问题??
本帖最后由 jackz007 于 2022-10-25 14:59 编辑
if 各个分段的条件必须闭合,而且,各不重叠。
- if(a <= 0) printf("%d",s) ;
- else if(a > 0 && a <= 1500) printf("%d",3500+a*(1-0.03));
- else if(a > 1500 && a <= 4500) printf("%d",3500+1500*(1-0.03)+(a-1500)*0.9);
- else if(a > 4500 && <= 9000) printf("%d",3500+1500*0.97+3000*0.9+(a-4500)*0.8);
- else if(a > 9000 && a <= 35000) printf("%d",3500+1500*0.97+3000*0.9+4500*0.8+(a-9000)*0.75);
- else printf("%d",3500+1500*0.97+3000*0.9+4500*0.8+26000*0.75+(a-35000)*0.7);
复制代码
|
|