C语言 冒泡排序(数组) 题目描述 输入n个数字,使用冒泡排序对其进行升序排序。 输入 测试次数T 每组测试数据格式为:数字个数n,后跟n个数字。假设n<20。 输出 对每组测试数据,输出冒泡排序的每趟排序结果
时间: 2024-02-26 17:59:03 浏览: 63
好的,这是一个关于C语言冒泡排序的问题,我将为您提供代码实现。以下是完整的程序代码:
```c
#include <stdio.h>
void bubble_sort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
// 每趟排序结果输出
printf("第%d趟排序结果:", i + 1);
for (j = 0; j < n; j++) {
printf("%d ", arr[j]);
}
printf("\n");
}
}
int main() {
int T, n, i, j;
int arr[20];
scanf("%d", &T);
for (i = 0; i < T; i++) {
scanf("%d", &n);
for (j = 0; j < n; j++) {
scanf("%d", &arr[j]);
}
bubble_sort(arr, n);
}
return 0;
}
```
程序中,首先输入测试次数 T,然后输入每组测试数据,包括数字个数 n 和 n 个数字。接着调用 bubble_sort 函数进行冒泡排序,每趟排序结果输出。最后输出所有测试数据的排序结果。
希望这个回答能够解决您的问题!
阅读全文