Q1: 实现一个选择排序的程序 ·要求: ·输入:通过键盘输入一个整数N,表示数组内整数的个数,再输入一组整数,用空格分开输入个数不超过N。输出:将输入的整数从小到大排序,并输出。
时间: 2024-11-15 16:22:27 浏览: 26
实现一个选择排序的程序通常包括以下几个步骤:
1. **获取输入**:
- 首先,从用户那里获取整数 N 表示数组长度,然后输入一组整数。你可以使用标准输入流(如 `cin`)来读取这些值。
2. **创建数组**:
- 创建一个大小为 N 的整数数组,用于存储用户输入的数值。
3. **选择最小元素**:
- 使用两层循环,外层遍历整个数组,内层找到剩余部分中的最小元素并记录其索引。
- 每次迭代结束后,都将当前未排序部分的最小元素交换到已排序部分的末尾。
4. **排序过程**:
- 重复上述过程,直到所有元素都被放置在其最终的位置,即整个数组有序。
5. **输出结果**:
- 循环结束后,遍历并打印排序后的数组,显示每个数字。
下面是一个简单的 C++ 代码示例实现选择排序:
```cpp
#include <iostream>
using namespace std;
void selectionSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
int minIndex = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
if (minIndex != i) {
swap(arr[i], arr[minIndex]);
}
}
}
int main() {
int N;
cout << "请输入整数 N:";
cin >> N;
int arr[N];
cout << "请输入 " << N << " 个整数:";
for (int i = 0; i < N; i++) {
cin >> arr[i];
}
selectionSort(arr, N);
cout << "排序后的数组:";
for (int i = 0; i < N; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
阅读全文