2.设计算法:将一个元素插入到有序的顺序表中,使顺序表仍有序,并编写主函数测试算
展开全部
#include<stdio.h>
#define MAX 5 //预定义数组容量
int InsNum(int *a,int len ,int ins)
{
int i=0,j;
while(ins>a[i]&&i<len)//找合适的位置插入ins
宏扰 i++;
if(i==len)//到了数组末尾
a[i]=ins;
else //数组中间i处
{
for(j=len;j>i;j--) //从i起所有数乱凳据往后移一位
a[j]=a[j-1];
a[i]=ins; //插入位置i处
}
哗绝旅return len+1;
}
int main()
{
int i,j,n,m;
int a[MAX]={2,5,11,15,17};//注意定义长度一定要比实际长度大
scanf("%d",&n); //输入要插入的数字
m=InsNum(a,5,n);//插入数组中
for(i=0;i<m;i++)//输出结果
{
printf("%d ",a[i]);
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询