酷代码 AI
菜单
服务商

C++ 实现根据输入正整数奇偶性计算偶数和或约数和

以下是实现该功能的 C++ 代码: ```cpp #include <iostream> // 当 n 为奇数时,计算 1 到 n 之间所有偶数之和 int sumOfEvenNumbers(int n) { int sum = 0; // 从 2 开始,以 2 为步长遍历,累加偶数 for (int i = 2; i < n; i += 2) { sum += i; } return sum; } // 当 n 为偶数时,计算 n 的所有约数之和 int sumOfDivisors(int n) { int sum = 0; // 遍历 1 到 n 的所有数 for (int i = 1; i <= n; i++) { // 如果 i 是 n 的约数,则累加到 sum 中 if (n % i == 0) { sum += i; } } return sum; } int main() { int n; std::cout << "请输入一个正整数 n: "; std::cin >> n; if (n % 2 == 1) { // n 是奇数,计算 1 到 n 之间所有偶数之和 int result = sumOfEvenNumbers(n); std::cout << "1 到 " << n << " 之间所有偶数之和为: " << result << std::endl; } else { // n 是偶数,计算 n 的所有约数之和 int result = sumOfDivisors(n); std::cout << n << " 的所有约数之和为: " << result << std::endl; } return 0; } ``` ### 代码解释: 1. **`sumOfEvenNumbers` 函数**:该函数接收一个整数 `n`,用于计算 1 到 `n` 之间所有偶数的和。通过 `for` 循环从 2 开始,每次增加 2,将偶数累加到 `sum` 中。 2. **`sumOfDivisors` 函数**:该函数接收一个整数 `n`,用于计算 `n` 的所有约数之和。通过 `for` 循环遍历 1 到 `n` 的所有数,判断是否为 `n` 的约数,如果是则累加到 `sum` 中。 3. **`main` 函数**:首先从用户输入获取一个正整数 `n`,然后判断 `n` 是奇数还是偶数。如果是奇数,调用 `sumOfEvenNumbers` 函数计算 1 到 `n` 之间所有偶数之和;如果是偶数,调用 `sumOfDivisors` 函数计算 `n` 的所有约数之和,并输出结果。 ######[AI问答 | 660点数解答 | 2026-02-28 20:22:46]

相关提问
发财导航,免费问AI
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]