酷代码 AI
菜单

根据邮件的重量和用户是否选择加急计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。用c语言编写

```c #include <stdio.h> // 计算邮费的函数 int calculatePostage(int weight, int isUrgent) { int fee = 0; // 基本费 fee = 8; // 处理超重部分 if (weight > 1000) { int extraWeight = weight - 1000; // 不足500克部分按500克计算 int chargeUnits = (extraWeight + 499) / 500; fee += chargeUnits * 4; } // 处理加急费用 if (isUrgent) { fee += 5; } return fee; } int main() { int weight; int isUrgent; // 输入邮件重量 printf("请输入邮件的重量(克): "); scanf("%d", &weight); // 输入是否加急 printf("是否选择加急(1: 是,0: 否): "); scanf("%d", &isUrgent); // 计算邮费 int postage = calculatePostage(weight, isUrgent); // 输出邮费 printf("邮费为: %d 元\n", postage); return 0; } ``` 代码解释: 1. `calculatePostage` 函数用于计算邮费,接收两个参数:`weight` 表示邮件的重量,`isUrgent` 表示是否加急。 2. 首先设置基本费为 8 元。 3. 如果重量超过 1000 克,计算超重部分的重量,不足 500 克部分按 500 克计算,每 500 克加收 4 元。 4. 如果用户选择加急,多收 5 元。 5. `main` 函数中,获取用户输入的邮件重量和是否加急信息,调用 `calculatePostage` 函数计算邮费并输出结果。 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 注意 `scanf` 函数读取输入时,要确保输入的数据类型与代码中期望的数据类型一致,否则可能会导致程序出错。 2. 在处理超重部分时,不足 500 克按 500 克计算的逻辑要正确实现,避免计算错误。 3. 对于用户输入的是否加急的判断,要确保输入只能是 0 或 1,否则可能会影响邮费的计算。 [2025-11-18 19:35:08 | AI写代码神器 | 590点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多