C语言中switch语句用法(做题)!谢谢!

题目:某商场给顾客的折扣率如下:
购物金额<200元,不打折。
200元<=购物金额<500元,9折。
500元<=购物金额<1000元,8折。
购物金额>=1000元,7.5折。
输入一个购物金额,输出打折率、购物实际付款金额。
(要求用switch语句完成。)

#include <stdio.h>
int main() {
float amount, discount, total;
printf("请输入购物金额:");
scanf("%f", &amount);
switch ((int)amount / 100) {
case 0:
discount = 1;
break;
case 2:
discount = 0.9;
break;
case 5:
discount = 0.8;
break;
default:
discount = 0.75;
break;
}
total = amount * discount;
printf("打折率为:%.2f\n", discount);
printf("实际付款金额为:%.2f\n", total);
return 0;
}
在这个示例中,我们首先定义了变量
amount

discount

total
,分别用于存储输入的购物金额、打折率和实际付款金额。然后,我们使用
printf

scanf
分别输出提示信息和读取用户输入。接下来,我们使用
switch
语句根据购物金额计算打折率。在
switch
语句中,我们使用
(int)amount / 100
将购物金额除以100并取整,得到购物金额所在的区间。然后,根据不同的区间设置不同的打折率。最后,我们计算实际付款金额,并使用
printf
输出打折率和实际付款金额。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-15
Float machine(float money)switch(money)
{
case (money<200) :return money;
case (money>=200&&money<500) :return (0.9*money);
case (money>=500&&money<1000) :renturn (0.8*money);
case (money>=1000) :renturn (0.75*money);
default :return 0;
}
return 0;
}本回答被网友采纳
第2个回答  2013-11-15
switch( money / 100 ){ case 0: case 1: return money; case 2: case 3: case 4: return money * 0.9; case 5: case 6: case 7: case 8: case 9: return mondy * 0.8; default: return mondy * 0.75;}
第3个回答  2013-11-15
你好,这些问题很好解决,常客网里面全部都有的
相似回答