用c语音编写:先读入十个整数,并把它们从小到大排列起来,再读入一个整数k,并将k插入该整数数列中,插入后的数列仍然按从小到大排序
时间: 2023-06-08 11:03:37 浏览: 91
好的,这是一个关于C语言编程的问题,我可以为您提供相关的解答。首先,您可以使用数组来存储读入的10个整数,然后对数组进行排序。排序可以使用冒泡排序、快速排序等算法。最后,将插入的整数k插入数组中,并再次进行排序。以下是一个示例代码:
```
#include <stdio.h>
void sort(int arr[], int len) {
int i, j, temp;
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
void insert(int arr[], int len, int k) {
int i, j;
for (i = 0; i < len; i++) {
if (arr[i] > k) {
for (j = len; j > i; j--) {
arr[j] = arr[j - 1];
}
arr[i] = k;
break;
}
}
}
int main() {
int arr[11], i, k;
printf("请输入十个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
sort(arr, 10);
printf("排序后的结果为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n请输入要插入的整数:");
scanf("%d", &k);
insert(arr, 10, k);
sort(arr, 11);
printf("插入后的结果为:\n");
for (i = 0; i < 11; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
阅读全文