已知一个已升序排列的数组,从键盘输入一个数,将它插入到数组中的合适位置,使数组依然有序。

方法二:逆序查找插入的位置#include<stdio.h>intmain(){inta[11]={1,3,5,7,9,11,13,15,17,19};//定义并初始化数... 方法二:逆序查找插入的位置
#include <stdio.h>
int main()
{
int a[11]={1,3,5,7,9,11,13,15,17,19};//定义并初始化数组
int i,x;
for(i=0;i<10;i++)//将插入前的数组元素显示
printf("%4d",a[i]);
printf("\nInput x:");
scanf("%d",&x);//输入待插入的数x
i=______8________;
while(______9________) // 逆序查找插入的位置,边找边后移
{
a[i+1]=a[i];
i--;
}
______10________;//将x插入到下标为i+1的位置
for(i=0;i<11;i++)//将插入后的数组显示
printf("%4d",a[i]);
printf("\n");
return 0;
}
展开
 我来答
yanglei5658
2015-05-10 · TA获得超过4756个赞
知道大有可为答主
回答量:835
采纳率:100%
帮助的人:525万
展开全部

8.    i=9;

9.    a[i] > x

10.   a[i+1] = x


对于8,开始要找到数组的末尾,才能从后往前找。

对于9,我们要找到输入的x比数组中的数大的位置,因此如果当前数组元素大于x,就要往前找。

对于10,根据注释填入程序即可。


结果如下:

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式