以下是用 C 语言实现的计算邮费的代码: ```c #include <stdio.h> // 计算邮费的函数 float calculatePostage(int weight, int isUrgent) { float postage = 0.0; if (weight <= 1000) { // 如果重量小于等于 1000 克 postage = 8; } else { // 超过 1000 克 int overweight = (weight - 1000) / 500; // 计算超重的 500 克的数量 if ((weight - 1000) % 500!= 0) { // 如果有余数,超重数量加 1 overweight++; } postage = 8 + overweight * 4; // 基本费加上超重费 } if (isUrgent) { // 如果选择加急 postage += 5; // 加收 5 元 } return postage; } int main() { int weight, isUrgent; printf("请输入邮件重量(克):"); scanf("%d", &weight); printf("是否加急(1 表示加急,0 表示不加急):"); scanf("%d", &isUrgent); float postage = calculatePostage(weight, isUrgent); printf("邮费为:%.2f 元\n", postage); return 0; } ``` 额外需要注意的逻辑点: 1. 输入的重量和加急选择需要进行有效性检查,比如重量不能为负数,加急选择只能是 0 或 1 。 2. 计算超重部分时,对于不足 500 克的处理要确保准确。 3. 在 main 函数中获取用户输入后,要考虑输入异常的处理,比如用户输入的不是数字。 [2024-12-04 19:55:56 | AI写代码神器 | 440点数解答]