已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。写一个c语言程序
时间: 2023-11-29 20:13:02 浏览: 99
python 有一个已经排好序的数组 现输入一个数,要求按原来的规律将它插入数组中 (示例)
5星 · 资源好评率100%
以下是一个示例代码,可以实现将新数插入到已有排序数组中,并保持排序不变:
```c
#include <stdio.h>
int main() {
int arr[10] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19};
int n = 10; // 数组中已有元素的数量
int new_num;
printf("请输入要插入的数:");
scanf("%d", &new_num);
// 找到新数应该插入的位置
int pos = 0;
while (pos < n && arr[pos] < new_num) {
pos++;
}
// 将新数插入到数组中
for (int i = n; i > pos; i--) {
arr[i] = arr[i-1];
}
arr[pos] = new_num;
n++;
// 输出插入后的数组
printf("插入后的数组为:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
你可以将已有的排序数组存储在 `arr` 数组中,然后通过输入一个新数 `new_num`,找到新数在数组中应该插入的位置 `pos`,并将其插入到数组 `arr` 中。最后,输出插入后的数组即可。
阅读全文