C语言编写程序计算运费:f=pws*(1-d)。(用switch语句实现)
s<250km 没有折扣
250<=s<500 2%折扣
500<=s<1000 5%折扣
1000<=s<2000 8%折扣
2000<=s<3000 10%折扣
3000<=s 15%折扣
实验代码:
#include <stdio.h>
int main()
{
double price,weight,distance,discount;
printf("请输入运输里程,运输物品重量,总花费价格:");
scanf("%lf%lf%lf",&distance,&weight,&price);
switch((int) distance/250)
{
case 0 : printf("运输的距离不足250km,享受不到折扣:");discount=0;break;
case 1 : discount=2;break;
case 2 :
case 3 : discount=5;break;
case 4 :
case 5 :
case 6 :
case 7 : discount=8;break;
case 8 :
case 9 :
case 10 :
case 11 :discount=10;break;
default : discount=12;break;
}
printf("折扣后的费用为:%lf\n",price*weight*distance*(1-0.01*discount));
return 0;
}
注意我们运用的是double类型的变量,所以我们需要对switch语句的里的判断条件,进行强制转换。
switch((int) distance/250)