用while循环做效果更好的!!!
根据要求,用switch语句写的程序
include <stdio.h>
void main()
{
float p,s,d,f;
p=300;
printf("Please input the distance s:\n");
scanf("%f",&s);
switch(s/250)
{
case 0:d=0;break;
case 1:d=0.02;break;
case 2:d=0.05;break;
case 4:d=0.08;break;
case 8:d=0.1;break;
default:d=0.15;break;
}
f=p*s*(1-d);
printf("%f\n",f);
getch();
}
输入一个数字s,语句s/250,是为了把s缩小范围,再根据要求,求出不同路程的折扣,如果路程s超过了3000,则d为15%。(这里对输入的s不作判断是否大于0。)
因为这些为折扣,所以总价=路程×单价(1-折扣);