int I,a;double c;
scanf("%d",I);
if(I<100000)
{a=1;c=I*0.1;}
else if(100000<I<=200000)
{a=0;c=(I-100000)*0.075+10000;}
else if(200000<I<=400000)
{a=2;c=(I-100000)*0.075+10000+(I-200000)*0.05;}
else if(400000<I<=600000)
a=3;
else if(600000<I<=1000000)
a=4;
else
a=5;
switch(0){
case 1:printf("%.2f",c);
case 0 :printf("0");
case 2:printf("%.2f",c);
case 3:printf("%.2f",(I-100000)*0.075+10000+(I-200000)*0.05+(I-400000)*0.03);break;
case 4:printf("%.2f",(I-100000)*0.075+10000+(I-200000)*0.05+(I-400000)*0.03+(I-600000)*0.015);break;
case 5:printf("%.2f",(I-100000)*0.075+10000+(I-200000)*0.05+(I-400000)*0.03+(I-600000)*0.015+(I-1000000)*0.01);break;
default:printf("no");break;
}
因为你的scanf没有取地址。
scanf("%d",&I);