首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
由N个有序整数组成的数列己放在一维数组中,给定程序MODI1.C中函数fun的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回-1。 折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(low
由N个有序整数组成的数列己放在一维数组中,给定程序MODI1.C中函数fun的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回-1。 折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(low
admin
2017-11-27
75
问题
由N个有序整数组成的数列己放在一维数组中,给定程序MODI1.C中函数fun的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回-1。
折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(low
high,查找结束。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
#define N 10
/*********** found*********** /
void fun(int a[], int m)
{ int low=0,high=N-l,mid;
while (low<=high)
{ mid=(low+high)/2;
if(m
high=mid-l;
/*********** found*********** /
else If(m > a[mid])
low=mid+l;
else return(mid) ;
}
return(-1);
}
main ()
{int i,a[N]={-3,4,7,9,13,45,67,
89,100,180 },k,m;
printf ("a数组中的数据如下:");
for(i=0;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)int fun(int a[],int m) (2)else if(m>a[mid])
解析
(1)根据主函数中“k=fun(a,m);”,知道函数fun应该是返回int型的函数,所以第一个标识下面定义的“void fun(int a[],int m)”应该改为“intfun(int a[],int m)”。
(2)第二个标识下的“else If(m>a[mid])”是判断m是否比a[mid]大,在while循环中采用的是if-elseif-else语句,显然“else If,,当中“If”应当小写,故第二标识下“else If(m>a[mid])”应改为“elseif(m>a[mid])”。
转载请注明原文地址:https://kaotiyun.com/show/qnxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下叙述中错误的是()。
以下程序的功能是输出a数组中所有字符串,请填空。#includemain(){char*a[]={“ABC”,“DEFGH”,“IJ”,“KLMNOP”};inti=0:for(;i
常见的软件工程方法有结构化方法和面向对象方法,类?继承以及多态性等概念属于【】。
若a是int型变量,则表达式(a=2*3,a*2),a+6的值为___________。
已知一个文件中存放若干工人档案记录,其数据结构如下:structa{charnumber[100];intage;floatp[6];};定义一个数组:structanumber[
运行下面的程序,输入字符串MicrosoftVisualStudio,则程序的执行结果是()。#includemain(){charChr[20];scanf(“%s”,&Chr);pfintf
有下列程序段:typedefstructNODE{intnum;stmctNODE*next;}OLD;下列叙述中正确的是()。
软件工程研究的内容主要包括:软件开发技术和_________。
软件危机出现于20时纪60年代末,为了解决软件危机,人们提出了()的原理来设计软件,这就是软件工程诞生的基础。
随机试题
半夏具有的功效不包括()
市场失灵是指()。
工程进度交换图纸不包括()。
某集团组织会计人员进行会计职业道德培训,该集团公司下属一个分公司,会计人员王某总认为干会计一行,没有多大出息,工作马马虎虎,他开出的一张转账支票金额数字只写了小写金额,给对方公司可乘之机,而多提走8万元资金。要求:根据资料,回答问题:王某缺乏
某公司准备购入一台设备以扩充生产能力。现有甲、乙两个方案可供选择,两个方案的现金流量表如下:根据上述资料,回答下列问题:甲、乙两个方案的投资回收期相差()年。
2012年以来,欧洲债务危机仍在进一步恶化。有关欧债危机产生原因中,不正确的表述是()。
小明、小亮、小川、小海在网球场进行了几场球赛的较量。比赛结果是:①小明、小亮对阵小川、小海时,双方势均力敌,不相上下。②当小明与小川对调后,小明、小海一方轻而易举地获胜。③当小海腿受伤退出比赛后,小亮一个人同小明、小川两人同时较量,结果却取胜了。假
2015年1—5月,北京市星级饭店中接待住宿人次最多的是:
已知R1=8,R0=9,执行指令MOVR0,R1,LSR#3后,R0的值为()。
A、theconferencemayconcludewithaconsensusontheproblem.B、itwillberelativelyeasiertosolvetheproblemafterthecon
最新回复
(
0
)