用C语言输入10个整数把它们按从小到大的顺序排列起来冒泡排序,最后再读入一个整数K,并将K插入到该整数数列中,插入后的数列仍然按从小到大的顺序排列,请输出一个完整的程序
时间: 2024-11-06 20:17:42 浏览: 53
```c
#include <stdio.h>
void bubble_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
void insert_sorted(int arr[], int n, int k) {
arr[n] = k;
int i = n - 1;
while (i >= 0 && arr[i] > k) {
arr[i + 1] = arr[i];
i--;
}
arr[i + 1] = k;
}
int main() {
int num[10], k, i;
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &num[i]);
}
bubble_sort(num, 10);
printf("排序后的数组:\n");
for (i = 0; i <= 9; i++) {
printf("%d ", num[i]);
}
printf("\n");
printf("请输入需要插入的整数K: ");
scanf("%d", &k);
insert_sorted(num, 10, k);
printf("插入K后的数组(保持升序):\n");
for (i = 0; i <= 10; i++) {
printf("%d ", num[i]);
}
printf("\n");
return 0;
}
```
阅读全文