C语言现有已排序好的数组,将输入一个数,要求按原来的规律将他插入到数组中
时间: 2024-05-11 10:15:25 浏览: 71
以下是C语言代码示例:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 3, 5, 7, 9, 11};
int n = sizeof(arr) / sizeof(int);
int num, i, j;
printf("请输入要插入的数:");
scanf("%d", &num);
// 找到插入位置
for (i = 0; i < n; i++) {
if (arr[i] > num) {
break;
}
}
// 后移数组元素
for (j = n - 1; j >= i; j--) {
arr[j + 1] = arr[j];
}
// 插入新元素
arr[i] = num;
// 输出插入后的数组
for (i = 0; i < n + 1; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
代码思路:
1. 定义已排序好的数组 `arr` 和数组长度 `n`,以及要插入的数 `num`。
2. 通过 `scanf` 函数输入要插入的数。
3. 通过循环遍历数组,找到要插入的位置 `i`。
4. 通过循环将数组元素后移,为要插入的数腾出位置。
5. 在 `i` 位置插入新元素 `num`。
6. 循环遍历数组,输出插入后的结果。
这样就实现了将一个数按原来的规律插入到已排序好的数组中的功能。
阅读全文