如何在有序数组中插入一个数?如1,2,3,5,6中插入4?急等

如何在有序数组中插入一个数?如1,2,3,5,6中插入4?急等C语言... 如何在有序数组中插入一个数?如1,2,3,5,6中插入4?急等C语言 展开
 我来答
cdyzxy
2018-03-12 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:85%
帮助的人:3751万
展开全部
从头逐一访问数组各元素
判断当前元素是否小于等于要插入的数
是:继续访问下一个数
否:记录位置退出循环
将记录元素开始到最后一个元素均向后移动复制1个元素位置,空出来的存放插入元素

程序:

#include<stdio.h>
#define MAXLEN 10
int fia(int *a,int n,int x) { int i,b;
  for ( i=0,b=n;i<n;i++ ) if ( a[i]>x ) { b=i; break; }
  n++;
  for ( i=b;i<n;i++ ) { b=a[i]; a[i]=x; x=b; }
  return n;
}
void main() { int a[N]={1,2,3,5,6},i,n=5;
  n=fia(a,n,4); for ( i=0;i<n;i++ ) printf("%d ",a[i]); printf("\n");
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式