#include<stdio.h>
int main()
{
int key = 0;
int end = 8;
int i;
int array[10] = { 0,1,2,3,4,6,7,8,9 };
printf("请输入要插入的数:");
scanf_s("%d", &key);
printf("原来的数组:\n");
for (i = 0; i < 9; ++i) {
printf("%2d", array[i]);
}
printf("\n");
//找待插入元素在数组中的位置——从后往前找
//注:如果待插入元素比数组中的任何一个元素都小,end最终来到-1的位置
// 如果继续比较,数组越界而导致代码崩溃
while (end >= 0 && key < array[end]) {
array[end + 1] = array[end];
end--;
}
//插入元素
array[end + 1] = key;
printf("插入后的数组:\n");
for (i = 0; i < 10; ++i) {
printf("%2d", array[i]);
}
printf("\n");
return 0;
}
C语言——在已排好序的数组中插入一个数
最新推荐文章于 2024-03-27 22:52:23 发布