运输公司对用户计算运输费用。路程(skm)越远,每吨spacer.gif千米运费越低。标准如下:

S<250              没有折扣

250<=s<500          2%折扣

500<=s<1000         5%折扣

1000<=s<2000        8%折扣

2000<=s<3000        10%折扣

3000<=s             15%折扣

解:程序:

#include<stdio.h>

int main()

{

int c,s;

float p,w,d,f;

printf("请输入单价,重量,距离:");

scanf("%f,%f,%d", &p, &w, &s);

if (s >= 3000)

{

c = 12;//3000km以上为同一折扣

}

else

{

c = s / 250;//3000km以下各段折扣不同,c的值不相同

}

switch (c)

{

case 0:d = 0;//c=0,代表250km以下,折扣d=0

break;

case 1 :d=2;//c=1,代表250~500km以下,折扣d=2%

break;

case 2 :

case 3 :d=5;//c=2和3,代表500~1000km,折扣d=5%

break;

case 4:

case 5:

case 6:

case 7:d = 8;//c=4~7,代表1000~2000km,折扣d=8%

break;

case 8:

case 9:

case 10:

case 11:d = 10;//c=8~11,代表2000~3000km,折扣d=10%

break;

case 12:d = 15;//c=12,代表3000km以上,折扣d=15%

break;

default:printf("输入数据错误!\n");

break;

}

f = p*w*s*(1 - d / 100);//计算总运费

printf("总运费为:%10.2f\n",f);

return 0;

}

结果:

请输入单价,重量,距离:100,1000,1500

总运费为:138000000.00

请按任意键继续. . .