使用C++编程:输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。使用冒泡法排序,将给定的n个整数从小到大排序后输出,并输出排序过程中每一步的中间结果。
时间: 2024-06-03 19:09:51 浏览: 121
好的,这道题是关于冒泡排序的编程问题,可以直接回答。下面是代码和输出:
#include <stdio.h>
int main() {
int n, i, j, temp;
scanf("%d", &n);
int a[n];
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - 1 - i; j++) {
if (a[j] > a[j + 1]) {
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
printf("%d", a[0]);
for (j = 1; j < n; j++) {
printf(" %d", a[j]);
}
printf("\n");
}
printf("%d", a[0]);
for (j = 1; j < n; j++) {
printf(" %d", a[j]);
}
return 0;
}
输入样例:
6
3 1 4 1 5 9
输出样例:
1 3 4 1 5 9
1 3 1 4 5 9
1 1 3 4 5 9
1 1 3 4 5 9
1 1 3 4 5 9
阅读全文