李星 发表于 2014-9-1 00:04:42

为什么 编译错误

#include <stdio.h>
void main()
{ printf ("%d\n",sizeof(long int));
long int i;
int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
scanf("%ld",&i);
bonus1 = 100000*0.1;
bonus2 = bonus1 + 100000*0.075;
bonus4 = bonus2 + 200000*0.05;
bonus6 = bonus4 + 200000*0.03;
bonus10 = bonus6 + 400000*0.015;
if (i<=100000)
       bonus = i*0.1;
else if(i<=200000)
       bonus = bonus1 + (i-100000)*0.075;
else if(i<=400000)
       bonus = bonus2 + (i-200000)*0.05;
else if(i<=600000)
       bonus = bonus4 + (i-400000)*0.03;
else if(i =1000000)
       bonus = bonus6 + (i-600000)*0.015;
else
       bonus = bonus10 +(i-1000000)*0.01;

printf("bonus = %d\n\n",bonus);

}

夏目 发表于 2014-9-1 02:16:02

你可以把第3行去掉的

夏目 发表于 2014-9-1 02:30:15

在标准C中规定变量定义必须放在所有的执行语句之前!一旦在运行语句之间再有定义的话,会报错误!(百度的)
页: [1]
查看完整版本: 为什么 编译错误