首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
N个有序整数数列已放在一维数组中,给定的下列程序中,函数fun()的功能是:利用折半查找法查找整数m在数组中的位置。若找到,则返回其下标值;反之,则返回“Not be found!”。 折半查找法的基本算法是:每次查找前先确定数组中待确定的范围:lo
N个有序整数数列已放在一维数组中,给定的下列程序中,函数fun()的功能是:利用折半查找法查找整数m在数组中的位置。若找到,则返回其下标值;反之,则返回“Not be found!”。 折半查找法的基本算法是:每次查找前先确定数组中待确定的范围:lo
admin
2012-06-08
90
问题
N个有序整数数列已放在一维数组中,给定的下列程序中,函数fun()的功能是:利用折半查找法查找整数m在数组中的位置。若找到,则返回其下标值;反之,则返回“Not be found!”。
折半查找法的基本算法是:每次查找前先确定数组中待确定的范围:low和high(low<high),然后把m与中间位置(mid)中元素的值进行比较。如果m的值大于中间位置元素中的值,则下一次的查找范围放在中间位置之后的元素中;反之,下次查找范围落在中间位置之前的元素中,直到low>high,查找结束。
[注意] 部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
[试题源程序]
#include <stdio.h>
#define N 10
int fun(int a[],int m)
{
int low=0, high=N-1, mid;
while(low<=high)
{
mid= (1) ;
if(m<a[mid])
high= (2) ;
eise
if(m>a[mid])
low=mid+1;
else
return(mid);
}
(3) (-1);
}
main()
{
int i, a[N]=(-3, 4, 7, 9, 13, 24, 67, 89, 100, 180), k, m;
printf("a数组中的数据如下: ");
for(i=0; i<N; i++);
printf("%d", a
);
printf("Enter m: ");
scanf("%d", &m);
k=fun(a, m);
if(k>=0)
printf("m=%d, index=%d\n", m, k));
else
printf("Not be found\n");
}
选项
答案
[1] (low+high)/2 [2] mid-1 [3] return
解析
填空1:根据题目的意思,这里应该是确定折半查找的中间位置,所以很明显应该填(low+high)/2。注意,这个式子返回的是整型数据,即如果分子为7,则结果为3。
填空2:根据题目的意思,中间的元素值大时应该选择前半段进行下次查找,所以应该把mid前一位的下标赋值给high。
填空3:由算法可以看出,这里应该是所有转换完毕仍然没有找到满足条件的地方,即应该返回-1,所以使用关键字“remm”。
转载请注明原文地址:https://kaotiyun.com/show/EDID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
某国有保险公司的工作人员张某,故意指使他人虚报保险事故,并由自己亲自理赔骗取保险金20万元与他人私分。张某构成()。
根据我国宪法规定,下列选项中哪一种情况不是公民获得物质帮助权的条件?()
某校五年级有100名学生参加活动,男生两人一组,女生三人一组,共有41组。那么男、女生各有多少名?
某车间加工一批零件,原计划每天加工100个,刚好如期完成,后改进技术,每天多加工10个,结果提前2天完成,这批零件有()个。
如图所示,两个半圆与一个四分之一圆叠放,问图中阴影a、b的面积比为多少?
一个各位不相同的8位数密码,任意相邻两个数字之和为质数,则最大的8位数各位数字之和为多少?
小李的弟弟比小李小2岁,小王的哥哥比小王大2岁、比小李大5岁。1994年,小李的弟弟和小王的年龄之和为15。问2014年小李与小王的年龄分别为多少岁?
一批游客中每人都去了A、B两个景点中的至少一个。只去了A的游客和没去A的游客数量相当.且两者之和是两个景点都去了的人数的3倍。则只去一个景点的人数占游客总人数的比重为()。
中国哲学凝聚了中华文化的基本精神,是中华民族数千年文化发展的结晶。在西方文化中,宗教处于核心的地位,然而在中国文化中,宗教的功能基本上是由哲学承担的。自古以来,中国人对宇宙的看法,对人生的看法,他们生活的意义,他们的价值观念,他们赖以安身立命的终极根据,都
下图为我国东部沿海地区某城市功能区分布略图,若图中城镇规划合理,避免了工业大气污染对住宅区的影响,则其指向标是()。
随机试题
硬盘驱动器采用的磁头是_______。
带下过少的临床选方为
狂犬病是由狂犬病毒引起的主要经()
有关佝偻病的预防,下列不正确的是
根据《债券登记、托管与结算业务实施细则》的规定,债券回购交易按( )进行申报。
通过债务重组,(),同时其他贷款条件没有因此明显恶化的,可考虑办理债务重组。
()是对企业整体框架的设计。
(2016·山东)根据《中华人民共和国预防未成年人犯罪法》的规定,未成年人严重不良行为包括()
班门弄斧:布鼓雷门
ChristmasEve(圣诞前夜)arrivesatmyhouseeachyear.Thecenterofthecelebrationisdinner.Mymotherspendsdayspreparingar
最新回复
(
0
)