c语言程序设计:功能:已有一个已经排好序的数组,今输入一个数,按照原来排序的规律将它插入到数组中。int i=0,j,length=0,number,sign=0,label=0;int a[20]={2,3,4,5,6,8,13,34};
时间: 2023-09-18 14:09:20 浏览: 66
好的,您的问题是如何实现已排好序的数组中插入一个数的功能,是吗?
以下是可以实现该功能的 C 语言代码:
```c
#include <stdio.h>
int main() {
int i = 0, j, length = 8, number, sign = 0, label = 0;
int a[20] = {2, 3, 4, 5, 6, 8, 13, 34};
printf("请输入要插入的数:");
scanf("%d", &number);
// 找到要插入的位置
for (i = 0; i < length; i++) {
if (number < a[i]) {
sign = i;
label = 1;
break;
}
}
// 插入数值
if (label == 1) {
for (j = length; j > sign; j--) {
a[j] = a[j - 1];
}
a[sign] = number;
length++;
} else {
a[length] = number;
length++;
}
// 输出结果
for (i = 0; i < length; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
代码的主要思路是:
1. 先定义一个已排好序的数组 `a` 和输入的数值 `number`;
2. 通过遍历数组找到 `number` 应该插入的位置,并标记 `sign`;
3. 根据标记判断插入位置是否在数组中,并插入相应的数值;
4. 输出插入后的结果。
这里的示例数组长度为 8,您可以根据实际情况修改长度和数组元素。