比如你可以写int
a=99998,完全等价于int
a=1e5-2。
1e5就是
1*(10的5次方)即100000
类似的有:
5e7就是5*(10的7次方)即50000000;
1e-5就是
1*(10的-5次方),1e5-2就是100000-2.
希望对你有帮助!
定义1E5+5的字符数组。字符串长度的定义:以首个\0为结束存放字符的个数。字符数组长度的定义:数组所占存储空间的实际大小。把字符串长度和数组长度区分开。inta[5]={1,2,3,4,5}。字符串长度小于1E5,定义1E5+5的字符数组。
C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。
给你改对了;C中最好别用a<n<b这种形式,TC中都不能编译通过的VC中虽然可以编译通过,但是,以234000为例:
当执行到你的1e5<I<=2e5时,它是由左到右的:
(1e5<I)<=2e5
1e5<I这个式子是个逻辑表达式,其值要么是0,要么是1,也就是说,无论如何,它都会小于2E5,所以这个if必然成立
void main()
{
double bonus,bon1,bon2,bon3,bon4,bon5,bon6,I
printf("请输入当年利润:")
scanf("%lf",&I)
bon1=0.1
bon2=0.075
bon3=0.05
bon4=0.03
bon5=0.015
bon6=0.01
if(I<=1e5)
bonus=I*bon1
else if(I<=2e5)
bonus=1e5*bon1+(I-1e5)*bon2
else if(I<=4e5)
bonus=1e5*bon1+(2-1)*1e5*bon2+(I-2e5)*bon3
else if(I<=6e5)
bonus=1e5*bon1+(2-1)*1e5*bon2+(4-2)*1e5*bon3+(I-4e5)*bon4
else if(I<=1e6)
bonus=1e5*bon1+(2-1)*1e5*bon2+(4-2)*1e5*bon3+(6-4)*1e5*bon4+(I-6e5)*bon5
else if(I>1e6)
bonus=1e5*bon1+(2-1)*1e5*bon2+(4-2)*1e5*bon3+(6-4)*1e5*bon4+(10-6)*1e5*bon5+(I-1e6)*bon6
printf("奖金总数为%f\n",bonus)
}