首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
由N个有序整数组成的数列已放在一维数组中,下列给定程序中函数fun的功能是:利用折半查找法查找整数m在数组中的位置。若找到,返回其下标值;否则,返回一1。 折半查找的基本算法是:每次查找前先确定数组中待查的范围low和high(lowhigh,查找
由N个有序整数组成的数列已放在一维数组中,下列给定程序中函数fun的功能是:利用折半查找法查找整数m在数组中的位置。若找到,返回其下标值;否则,返回一1。 折半查找的基本算法是:每次查找前先确定数组中待查的范围low和high(lowhigh,查找
admin
2019-04-04
49
问题
由N个有序整数组成的数列已放在一维数组中,下列给定程序中函数fun的功能是:利用折半查找法查找整数m在数组中的位置。若找到,返回其下标值;否则,返回一1。
折半查找的基本算法是:每次查找前先确定数组中待查的范围low和high(low
high,查找结束。
请改正程序中的错误,使它能得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include
#define N 10
/*******found*******/
void fun(int a[],int m)
{
int low=0,high=N一1,mid;
while(low<=high)
{
mid=(low+high)/2;
if(m
high=mid一1:
/*******found*******/
else If(m>a[mid])
low=mid+1:
else return(mid);
}
return(一1);
}
main()
{
int i,a[N]={一3,4,7,9,13,45,67,89,100,180},k,m;
prinff(”1t数组中的数据如下:”);
for(i=0;i
printf(“%d”,a
);
printf(“Enter m:”);
seanf(“%d”,&m);
k=fun(a,m);
if(k>=0)
prinff(“m=%d,index=%d\n”,m,k);
else
prinff(“Not be found!\n”);
}
选项
答案
(1)int fun(int a[],int m)或fun(int a[],int m) (2)else if(m>a[mid])
解析
本题考查:折半查找算法;函数定义;if…else语句。
(1)fun(int a[],int m)函数的返回值为int类型,所以定义函数时,函数的返回类型不能是void,而是int类型。这里int可以省略,若省略函数类型标识符,系统将默认为int型。
(2)else If(m>a[mid])中,关键字if需要区别大小写,大写是错误的。
说明:折半查找算法,将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分。通过一次比较,将查找区间缩小一半。
转载请注明原文地址:https://kaotiyun.com/show/A6Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
与结构化需求分析方法相对应的是【】方法。
执行下面的程序后,a的值是() #defineSQR(X)X*X main() { inta=10,k=2,m=l; a/=SQR(k+m)/SQR(k+m); printf("%d\n",a); }
有以下程序intfun(intn){if(n==1)return1;elsereturn(n+fun(n-1));}main(){intx;seanf("%d",&
在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。
数据处理的最小单位是
以下程序运行后的输出结果是[]。main(){intx,a=1,b=2,c=3,d=4;x=(a<b)?a:b;x=(x<c)?x:c;x=(d>x)?x:d;pri
设有如下变量说明,则a+(int)((int)b+c)>>(int)(b-c)的值为【】。inta=5;floatb=7.2,c=3.6;
分析下列程序:#include<stdio.h>main(){int*p1,*p2,*p;inta=6,b=9;p1=&a;p2=&b;if(a<b){p=p1;p1=p2;p2=p
下列程序的运行结果是:【】。#include<stringh>char*ss(char*s){returns+strlen(s)/2;}main(){char*p,*str="abcdefgh";p=
随机试题
过氧乙酸的保管和使用方法错误的是
两足跟中心点之间的水平距离为
A.颌内静脉与颞浅静脉汇合而成B.面后静脉前支与面前静脉汇合而成C.面后静脉后支与耳后静脉汇合而成D.面前静脉与颌内静脉汇合而成E.耳后静脉与颞浅静脉汇合而成颈外静脉是由
女性,32岁,阵发性上腹痛2年,夜间加重,疼痛有季节性,冬季明显,有反酸,为进一步确诊,首选的检查方法是
生地黄质地断面为巴戟天为
谈谈你对“幼儿的生活就是幼儿的教育,幼儿的教育就是幼儿的生活”的理解。
事物发展经过两次否定,出现了初始阶段的某些特征,好像是一种回复。()
下列关于亲属关系的发生与终止原因的表述,错误的是()。
Thelevelofeconomicandindustrialdevelopmentenjoyedbyastateaffectstheforeignpolicygoalsitcanpursue.(46)Asagen
PERSON:APPAREL::
最新回复
(
0
)