c语言 已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。

来源:百度知道 编辑:UC知道 时间:2024/05/14 08:43:37

insert(int val,int* array,int* len)
//val为要插入的数,array为已排序的数组(假设为升序),len为数组元素个数。
{
int count,i;
i=*len;
for(count=0;count<i;count++)
{
if(val<array[count]) break;
}
do
{
array[i+1]=array[i];
i--;
}while(i>=count);
array[count]=val;
(*len)++; //插入后将数组长度增加一
}

就按湛蓝水晶的做,另外,如果数组不大,这样就可以了,如果非常大的话,查找插入位置时可以考虑二分法

#include "stdio.h"
main()
{
int a[11]={1,4,6,9,13,16,19,28,40,100};
int num,i,j;
printf("Array a:\n");
for(i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");
printf("insert data:");
scanf("%d",&num);
for(i=0;i<10;i++)
if(a[i]>num)
{j=a[i];a[i]=num;num=j;}
a[i]=num;
printf("Now,array a:\n");
for(i=0;i<11;i++)
printf("%5d",a[i]);
printf("\n&quo

c语言 已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。 用C语言编出“已有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中” 以有一个已排好的数组,今输入一个数,要求按原来排序的规律将它插入数组中?求其算法或c语言程序? 已有一个已排序好的数组,今输入一个数,要求按原来排序的规律将它插入数组中 C语言 数组输入问题 C语言,在函数里要输入一个数组怎么办 C语言求助!输入一个数组并输出 c语言如何申请一个由外部输入长度的数组? c语言如何申请一个由外部输入长度的二维数组? 利用c语言编写 要求输入一个5×5的数组求其最大值,行号,列号