首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有一个已排好序的数组,今输入一个数,要求按原来的顺序规律将它插入到数组中。算法是:假设排序顺序是从小到大,对输入的数,检查它在数组中哪个数之后,然后将比这个数大的数顺序后移一个位置,在空出的位置上将该数插入。请在程序中的空白处填上一条语句或一个表达式。
有一个已排好序的数组,今输入一个数,要求按原来的顺序规律将它插入到数组中。算法是:假设排序顺序是从小到大,对输入的数,检查它在数组中哪个数之后,然后将比这个数大的数顺序后移一个位置,在空出的位置上将该数插入。请在程序中的空白处填上一条语句或一个表达式。
admin
2009-04-15
57
问题
有一个已排好序的数组,今输入一个数,要求按原来的顺序规律将它插入到数组中。算法是:假设排序顺序是从小到大,对输入的数,检查它在数组中哪个数之后,然后将比这个数大的数顺序后移一个位置,在空出的位置上将该数插入。请在程序中的空白处填上一条语句或一个表达式。
#define N 100
main()
{ float a[N+1],x;
int i,p;
for(i=0;i<N;i++)
scanf("%f",&a
);
scanf("%f",&x);
for(i=0,p=N;i<N;i++)
if(x<a
)
{【 】;
break;}
for(i=N-1;【 】;i-)
a[i+1]=a
;
a[p]=x;
for(i=0;【 】;i++)
{ printf("%8.2f",a
);
if(i% 5=0)
printf("\n");
}
}
选项
答案
p=i; i>=p i<=N
解析
本题主要考查了插入排序。由于程序中的数组在开始已经按从小到大的顺序排好。在插入时,首先要查到第一个大于待插入数的数组下标,即当待插入元素小于数组中当前元素时,记下数组的当前下标p,并结束循环。故第一空目的是为了记下数组下标,应填p=i;插入排序的第二部是将大于待插入元素的所有元素都向后移动一位,故在循环时,要从最后一个元素到第p个元素都要后移一位,因此第二空应填i>=p。最后一个循环是将N+1个元素都输出,战最后一空应为i<=N。 (注:本题有多种答案,以上仅提供一种)
转载请注明原文地址:https://kaotiyun.com/show/ZOXp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
语句:PrintAsc(Chr$(Mid$("98765432",4,2)))的输出是
在窗体上画一个名称为Command1的命令按钮,并编写如下程序:FunctionFun(x) y=0 Ifx
在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommandl_Click()Move500,500EndSub程序运行后,单击命令按钮,产生的结果为()。
为组合框Combol增加一个列表项”电脑”,下列语句正确的是()。
以下自定义数据类型的语句中,正确的是( )。
设工程中有两个窗体:Forml、Form2,Forml为启动窗体。Form2中有菜单,其结构如表。要求在程序运行时,在Forml的文本框中输入口令并按回车键(回车键的ASCII码为13)后,隐藏Forml,显示Form2、若口令为“Teacher”,
随机试题
经济法的宗旨
平整度是重要的检测项目,故应采用数理统计的方法进行评定。()
750kV单回路架空送电线路,4分裂相导线,导线分裂间距500mm,三相导线水平排列,间距14m,导线直径为28.64mm。相导线间几何均距为()。
国家优化开发区域是指具备()的城市化地区。
依据不同的标准,工程索赔可按( )进行分类。
我国信托业务的范围包括( )。
下列哪项说法是错误的?()
下列各项中,属于我国现行税法的有()。
Thiscanhelpto______somethingthatthestudentsmaynot.havecomprehended.
WhendidMargaretThatcherleaveoffherpost?
最新回复
(
0
)