C语言题目,使用SWITCH语句计算折扣率。

输入一个金额,输出折扣率和实际支付金额。
购物金额〈300 不打扣
300元<=购物金额<500元 9折
500元<=购物金额<800元 7折
800元<=购物金额 5折

#include <stdio.h>
int main()
{
double je,zk;
int x;
printf("那个输入金额(大于0):");
scanf("%lf",&je);
x=(int)(je/100);
switch(x)
{
case 0:case 1:case 2:zk=je;break;
case 3:case 4:zk=je*0.9;break;
case 5:case 6:case 7:zk=je*0.7;break;
default:zk=je*0.5;
}
printf("折扣率为:%f,实际支付金额:%f\n",zk/je,zk);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-15
如果金额是整数,可以将金额整除100之后进行判断。如果是浮点数则需要强制转换成int后进行整除100再判断。就是写的case略多一点
第2个回答  2015-01-15
switch干不了这个事,用if else。