用简单的c语言实现冒泡法并将10个整数进行排序,然后添加一个新数并进行2次排序
时间: 2024-03-24 22:38:10 浏览: 50
C# 冒泡法排序可视化程序,用不同长度条形柱表示数值,条形柱移动,表示冒泡法的实现。
5星 · 资源好评率100%
好的,下面是实现你所需功能的代码:
```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;
}
}
}
}
int main() {
int arr[10], i, new_num;
// 输入10个数
printf("请输入10个数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 冒泡排序
bubble_sort(arr, 10);
// 输出排序后的结果
printf("排序后的结果为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
// 输入一个新数
printf("请输入一个新数:");
scanf("%d", &new_num);
arr[10] = new_num;
// 第一次冒泡排序
bubble_sort(arr, 11);
// 第二次冒泡排序
bubble_sort(arr, 11);
// 输出排序后的结果
printf("排序后的结果为:\n");
for (i = 0; i < 11; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
这个程序中,我们首先自定义了一个 `bubble_sort()` 函数来实现冒泡排序,然后在 `main()` 函数中,先输入 10 个数并进行排序,然后再输入一个新数,将它添加到数组末尾,并进行两次冒泡排序。注意,在第二次排序时,数组的长度已经变成了 11。最后输出排序后的结果。
阅读全文