一、程序分析
首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后再比较此元素之后的数,依次后移一个位置。
二、程序源代码
#include<stdio.h>
#include<Windows.h>
int main()
{
int a[11] = { 1, 4, 6, 9, 13, 16, 19, 28, 40, 100 };//初始化数组 给数组内十个元素赋值,留一个空
int temp1, temp2, number, end, i, j;
printf("original array is:\n");
for (i = 0; i<10; i++)
{
printf("%5d", a[i]);//输出数组
}
printf("\n");
printf("insert a new number:");
scanf_s("%d", &number);
end = a[9];//从数组最后一位元素开始比较
if (number>end)
a[10] = number;
else
{
for (i = 0; i<10; i++)
{
if (a[i]>number)
{
temp1 = a[i];
a[i] = number;
for (j = i + 1; j<11; j++)
{
temp2 = a[j];
a