已知升序数组a[10]={2,4581114323445}。输入一个整数并将它插入到合适的位置,使数组依然有序。测试输入分别为1,12,50
要自己学着写
#include <stdio.h>
int main()
{
int a[10]={2,4,5,8,11,14,32,34,45};//定义并初始化数组
int i,x;
for(i=0;i<10;i++)//将插入前的数组元素显示
printf("%4d",a[i]);
printf("\nInput x:");
scanf("%d",&x);//输入待插入的数x
i = 8;
while(a[i] > x) // 逆序查找插入的位置,边找边后移
{
a[i+1]=a[i];
i--;
}
a[i+1] = x;//将x插入到下标为i+1的位置
for(i=0;i<10;i++)//将插入后的数组显示
printf("%4d",a[i]);
printf("\n");
return 0;
}
输入1:
输入12:
输入50: