C语言编程,有一个已经排好序的整型数组(1,4,6,9,11,25,31,46,83,100)。现 输入一个数,要求按序将它插入数组中,并依序输出新数组。 (注意,数组输 出时每个数间隔一个空格)
时间: 2023-10-19 08:07:21 浏览: 131
有一个已排好序的数组,今输入一个数,要求按排序的规律将它插入数组中。
好的,这是一个经典的插入排序问题。以下是 C 代码实现:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 4, 6, 9, 11, 25, 31, 46, 83, 100};
int n = sizeof(arr) / sizeof(arr[0]);
int toInsert;
printf("请输入要插入的数:");
scanf("%d", &toInsert);
// 找到插入位置
int pos = n - 1;
while (pos >= 0 && arr[pos] > toInsert) {
arr[pos + 1] = arr[pos];
pos--;
}
// 插入新数
arr[pos + 1] = toInsert;
// 输出新数组
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
运行程序后输入要插入的数,比如输入 8,输出结果为:
```
1 4 6 8 9 11 25 31 46 83 100
```
阅读全文