输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:\n\n输入一个正整数 n (1<n<=10),再输入 n 个整数存入数组 a 中,用选择法将数组 a 中的元素按升
时间: 2023-04-22 19:04:15 浏览: 1363
repeat-array:重复数组的内容 n 次
序排列,然后输出排好序的数组 a。
首先,我们需要明确题目的意思。题目要求我们输入一个正整数 repeat,表示要进行 repeat 次下列运算。每次运算,我们需要输入一个正整数 n 和 n 个整数,将这 n 个整数存入数组 a 中,然后使用选择法将数组 a 中的元素按升序排列,最后输出排好序的数组 a。
选择法是一种简单的排序算法,其基本思想是每次从未排序的元素中选出最小的元素,放到已排序的元素末尾。具体实现可以参考以下代码:
```
#include <iostream>
using namespace std;
int main() {
int repeat;
cin >> repeat;
while (repeat--) {
int n;
cin >> n;
int a[n];
for (int i = 0; i < n; i++) {
cin >> a[i];
}
for (int i = 0; i < n - 1; i++) {
int min_index = i;
for (int j = i + 1; j < n; j++) {
if (a[j] < a[min_index]) {
min_index = j;
}
}
if (min_index != i) {
int temp = a[i];
a[i] = a[min_index];
a[min_index] = temp;
}
}
for (int i = 0; i < n; i++) {
cout << a[i] << " ";
}
cout << endl;
}
return 0;
}
```
以上代码中,我们首先输入 repeat,表示要进行 repeat 次下列运算。然后,我们使用 while 循环进行 repeat 次运算。每次运算,我们输入 n 和 n 个整数,将这 n 个整数存入数组 a 中。接着,我们使用选择法将数组 a 中的元素按升序排列。最后,我们输出排好序的数组 a。
希望以上解答能够帮助到您!
阅读全文