酷代码 AI
菜单
服务商

C++ 基础单选题解析:从基础运算到选择排序

### ❓题目 1:运行以下程序,输出的结果是( ) `cout << 5 / 2 + 1` 在 C++ 中,`5 / 2` 是两个整数相除,结果会取整,`5 / 2` 结果为 2,再加上 1,结果为 3。 ### ❓题目 2:下列选项中,添加 `iostream` 头文件的正确写法是( ) 在 C++ 中,正确添加 `iostream` 头文件的写法是 `#include <iostream>`。 ### ❓题目 3:下列选项中,哪个是 C++ 中循环的关键字是( ) C++ 中常见的循环关键字有 `for`、`while`、`do-while`。 ### ❓题目 4:下列关于 C++ 语言描述不正确的是( ) 需要具体给出选项才能准确判断,不过 C++ 语言是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。 ### ❓题目 5:阅读下面程序,程序的输出结果是( ) ```cpp int f (int arr[], int n) { int ans = 0; for (int i = 0; i < n; i++) { int m = i; for (int j = i + 1; j < n; j++) { if (arr[j] < arr[m]) { m = j; } } if (m != i) { int temp = arr[i]; arr[i] = arr[m]; arr[m] = temp; ans++; } } return ans; } int main () { int arr[] = {64, 25, 12, 22, 11, 90, 34}; cout << f(arr, 7) <<endl; for (int i = 0; i < 7; i++) { cout << arr[i] << " "; } return 0; } ``` 这段代码实现的是选择排序算法。`f` 函数会对数组进行选择排序,并记录交换元素的次数。 以下是代码执行的详细过程: 1. 初始数组 `arr = {64, 25, 12, 22, 11, 90, 34}` 2. 第一次外层循环,`i = 0`,找到最小值 11,与 `arr[0]` 交换,交换次数 `ans` 加 1,数组变为 `{11, 25, 12, 22, 64, 90, 34}` 3. 第二次外层循环,`i = 1`,找到最小值 12,与 `arr[1]` 交换,交换次数 `ans` 加 1,数组变为 `{11, 12, 25, 22, 64, 90, 34}` 4. 第三次外层循环,`i = 2`,找到最小值 22,与 `arr[2]` 交换,交换次数 `ans` 加 1,数组变为 `{11, 12, 22, 25, 64, 90, 34}` 5. 第四次外层循环,`i = 3`,数组顺序正确,不交换 6. 第五次外层循环,`i = 4`,数组顺序正确,不交换 7. 第六次外层循环,`i = 5`,找到最小值 34,与 `arr[5]` 交换,交换次数 `ans` 加 1,数组变为 `{11, 12, 22, 25, 64, 34, 90}` 8. 第七次外层循环,`i = 6`,数组顺序正确,不交换 最终交换次数 `ans = 4`,排序后的数组为 `{11, 12, 22, 25, 34, 64, 90}` 所以程序输出结果是: ``` 4 11 12 22 25 34 64 90 ``` ######[AI问答 | 1036点数解答 | 2026-02-27 13:18:14]

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