C语言解决以下问题1 当运输距离s=300 公里时:货重w2吨时按98收费; 2=w4吨时按96收费; 4=w6吨时按94收费; w=6时按92收费;2 当运输距离s300 公里时:货重w2吨时按100收费; 2=w4吨时按98收费; 4=w6吨时按96收费; w=6时按94收费;设p为每吨每公里的运费swp为输入数据均为整数cost输出为向用户收取的费用。要求处理到文件尾
以下是C语言解决该问题的代码:
#include <stdio.h>
int main() {
int s, w;
float p, cost;
while (scanf("%d%d%f", &s, &w, &p) == 3) {
if (s >= 300) {
if (w < 2) cost = s * p * 0.98;
else if (w < 4) cost = s * p * 0.96;
else if (w < 6) cost = s * p * 0.94;
else cost = s * p * 0.92;
} else {
if (w < 2) cost = s * p;
else if (w < 4) cost = s * p * 0.98;
else if (w < 6) cost = s * p * 0.96;
else cost = s * p * 0.94;
}
printf("%.2f\n", cost);
}
return 0;
}
首先读入运输距离s、货重w、每吨每公里的运费p,然后根据题目要求计算费用cost,并输出到屏幕上。循环读入直到文件结尾。在计算费用时,根据距离和货重分别判断所需收费的百分比,然后用距离、货重、每吨每公里的运费和百分比计算出费用。最后输出费用。注意要保留两位小数,可以使用printf()函数的格式控制符"%.2f"实现。
原文地址: https://www.cveoy.top/t/topic/bPQ1 著作权归作者所有。请勿转载和采集!