题目:
某酒水销售公司指派销售员销售各种酒水,其中白酒﹑红酒和啤酒的单价分别为168元/瓶、120元/瓶、5元/瓶。每个销售员,白酒每月的最高供应量为5000瓶,红酒为3000瓶,啤酒为30000瓶。各销售员每月至少需售出白酒50瓶、红酒30瓶、啤酒300瓶,任一产品未完成总佣金为0。
月末,各销售员向酒水销售公司上报他所在区域的销售业绩,酒水销售公司根据其销售总额计算该销售员的佣金,销售员的佣金计算方法如下:
2万元以下(含):4%;
2万元(不含)~4.5万元(含):4.05%;
4.5万元以上(不含):4.1%
根据上述要求
1.设计一个c程序,使用户能在控制台输入三种酒水的销售数量,并实现以上计算规则输出销售员佣金,佣金保留两位小数。
设计三个测试方案,对程序的不同计算规则分支分别进行测试。
分析过程:
if-else的使用。
代码编写:
#include <stdio.h>
int main() {
int baijiu, hongjiu, pijiu; // 白酒、红酒、啤酒销售数量
double total_sales; // 销售总额
double commission; // 佣金
printf("请输入白酒销售数量:");
scanf("%d", &baijiu);
printf("请输入红酒销售数量:");
scanf("%d", &hongjiu);
printf("请输入啤酒销售数量:");
scanf("%d", &pijiu);
if (baijiu < 50 || hongjiu < 30 || pijiu < 300) {
commission = 0;
printf("佣金为:%.2f\n", commission);
return 0;
}
total_sales = baijiu * 168 + hongjiu * 120 + pijiu * 5;
if (total_sales <= 20000) {
commission = total_sales * 0.04;
} else if (total_sales <= 45000) {
commission = total_sales * 0.0405;
} else {
commission = total_sales * 0.041;
}
printf("佣金为:%.2f\n", commission);
return 0;
}
测试数据:
三个测试方案:
测试未完成最低销售量的情况。输入白酒销售数量为40,红酒销售数量为30,啤酒销售数量为300。预期输出结果为“佣金为:0.00”。
测试销售总额在2万元以下(含)的情况。输入白酒销售数量为100,红酒销售数量为100,啤酒销售数量为1000。预期输出结果为“佣金为:1128.00”。
测试销售总额在4.5万元以上(不含)的情况。输入白酒销售数量为300,红酒销售数量为200,啤酒销售数量为5000。预期输出结果为“佣金为:2926.20”。
如果有不会的,请继续私信我或者给我留言。