有一个己排好序的数组,要求输入一个数后,按原来排序的规律把它插入数组中。(不接受异常处理)
#include <stdio.h>
void insert (int *,int *);
int main(){
int a[1000],len,i;
printf("请输入输入数字个数:");
scanf("%d",&len);
printf("请输入排好序的数字:");
for( i=0; i<len; i++)
scanf("%d",&a[i]);
insert(a,&len);
for( i=0 ; i<len; i++)
printf("%d ",a[i]);
return 0;
}
void insert( int *a, int *len){
int j,t,flag=0;
j = *len -1;
printf("请输入插入数字:");
scanf("%d",&t);
if ( a[0] < a[1]) //判断升序还是降序
flag = 1;
while( (flag ? t<a[j] : t>a[j]) && j>=0)
a[j+1] = a[j--];
a[++j] = t;
++ (*len);
}