酷代码 AI
菜单

给定 n n 个正整数,再给定一个正整数 x x,请你编写程序,计算 n n 个正整数中,小于 x x 的数的总和是多少? !!!注意输入顺序!!! 输入格式 共三行, 第一行为一个正整数 n n,表示正整数的个数, 第二行依次为 n n 个正整数,数之间以一个空格间隔, 第三行为一个正整数 x x 。c++

以下是使用 C++ 语言解决此问题的代码: ```cpp #include <iostream> using namespace std; int main() { int n; // 读取正整数的个数 cin >> n; int sum = 0; for (int i = 0; i < n; i++) { int num; // 读取每个正整数 cin >> num; int x; // 读取 x if (i == 0) { cin >> x; } // 判断当前数是否小于 x if (num < x) { sum = sum + num; } } // 输出小于 x 的数的总和 cout << sum << endl; return 0; } ``` 代码解释: 1. 读取正整数的个数:使用 `cin` 读取第一行输入的正整数 `n`,它表示后续要输入的正整数的个数。 2. 循环读取正整数并计算总和: - 使用 `for` 循环 `n` 次,每次循环读取一个正整数 `num`。 - 在第一次循环时读取 `x`,后续循环不再重复读取。 - 判断 `num` 是否小于 `x`,如果是,则将其累加到 `sum` 中。 3. 输出结果:循环结束后,将 `sum` 的值输出,即为小于 `x` 的数的总和。 复杂度分析: - 时间复杂度:$O(n)$,其中 `n` 是输入正整数的个数,因为只需要遍历一次所有输入的正整数。 - 空间复杂度:$O(1)$,只使用了常数级的额外空间。 [2025-12-21 11:36:07 | AI问答 | 405点数解答]

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