C语言中,编写一个程序,把一个数插入到一个有序的有10个元素的数组中,并使插入后的数组仍然为有序数组
时间: 2024-05-08 09:17:58 浏览: 75
在有序数组插入一个数
答案:
可以使用插入排序的思路,从数组末尾开始比较插入数与数组元素的大小,如果插入数比当前元素小,则把当前元素往后移位,直至找到插入位置。代码如下:
```
#include <stdio.h>
int main()
{
int n, i, j, temp, num;
int arr[10] = {1, 3, 7, 9, 10, 14, 17, 20, 22, 25};
printf("请输入要插入的数:");
scanf("%d", &num);
for (i = 9; i >= 0; i--)
{
if (num > arr[i])
{
for (j = 9; j > i + 1; j--)
{
arr[j] = arr[j-1];
}
arr[j] = num;
break;
}
}
printf("插入后的数组为:\n");
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
```
当插入数比数组中所有元素都大时,插入到数组的末尾。
阅读全文