永C语言,求提成。
发布网友
发布时间:2024-07-22 00:07
我来回答
共2个回答
热心网友
时间:2024-08-26 17:25
#include<stdio.h>
void main()
{
// int i;
double i;
double bonus,bon1,bon2,bon4,bon6,bon10;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+100000*0.05;
bon6=bon4+100000*0.03;
bon10=bon6+100000*0.015;
//scanf("%d",&i);
scanf("%lf",&i);
if(i<=100000)
bonus=i*0.1;
else if(i<=200000)
bonus=bon1+(i-100000)*0.075;
else if(i<=400000)
bonus=bon2+(i-200000)*0.05;
else if(i<=600000)
bonus=bon4+(i-400000)*0.03;
else if(i<=1000000)
bonus=bon6+(i-600000)*0.015;
else
bonus=bon10+(i-1000000)*0.01;
// 这里打印,有问题
// printf("%10.2f\n", &bonus);
printf("%0.2lf\n", bonus);
getch();
}
运行结果:
热心网友
时间:2024-08-26 17:24
你的数太大了,不能用int存储,试下double吧。
16位int最大是32767