首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
专升本
要求函数的功能是在一维数组a中查找x值。若找到,则返回所在的下标值;否则,返回0。设数据放在数组元素的a[1]到a[n]中。在以下给出的函数中,不能正确执行此功能的函数是( )。
要求函数的功能是在一维数组a中查找x值。若找到,则返回所在的下标值;否则,返回0。设数据放在数组元素的a[1]到a[n]中。在以下给出的函数中,不能正确执行此功能的函数是( )。
admin
2014-10-20
56
问题
要求函数的功能是在一维数组a中查找x值。若找到,则返回所在的下标值;否则,返回0。设数据放在数组元素的a[1]到a[n]中。在以下给出的函数中,不能正确执行此功能的函数是( )。
选项
A、funa(int*a,int n,int x)
{*a=x;
whlie(aEn]!=x)nm一;
return n;
}
B、funb(int*a,int n,int x)
{int k;
for(k=1;k<=n;k++)
if(a[k]==x)return k;
return 0;
}
C、func(int a[],int n,int x)
{int*k;
a[o]=x;k=a+n;
while(*k!=x)k一一;
return k—n:
}
D、fund(int a[],int n,int x)
{int k=0;
do k++;
while((k
if((k
else return 0;
}
答案
C
解析
在数组中找指定值是经常遇到的计算要求,有多种编程方法。在这里,数据预放在数组下标1至n的元素中,下标为0的元素没有放数据,程序可以利用这个位置简化查找函数。函数funa先将要查找的数放入a[0],从数据表的最后一个元素开始逆序向前查找。这样做的好处是循环条件不必担心因数组中原先没有值为x的元素而一直顺序查找下去,访问不是数表的元素,需插入条件n>0。在a[0]处放入x后,这个条件就不必要了,循环至少在访问了a[0]后终止,并返回0值。所以该函数能完成指定的功能。函数funb采用常规的办法编写,循环在a[1]与a[n]之间顺序寻找,一旦找到立即返回找到处的下标,直至查找循环结束,查不到指定的值而返回0值。函数func采用与函数funa相同的方法,不过是另外引入一个指针变量。但是该函数return语句后的表达式有严重的错误,应返回k—a,两指针的差,其值等于找到元素的下标。表达式k—n是指针k向前移n个位置的指针值。函数fund预置k为0,循环让k增1,并在k在界内和a[k]不等于x的情况下循环。循环结束有两种情况,或k已不在界内,或k在界内,并且a[k]等于x。若是后者,函数返回k,而若前者,函数返回比该函数也能正确完成查找工作。这样,不能正确完成查找工作的函数是函数{onec。所以正确选择是C。
转载请注明原文地址:https://www.kaotiyun.com/show/2lvR777K
本试题收录于:
计算机科学与技术题库普高专升本分类
0
计算机科学与技术
普高专升本
相关试题推荐
病腰椎骨折需用平车运送,应采用()。
阵发性室上性心动过速的心电图特点是()。
结构的可靠性是指结构在正常设计、正常施工和正常使用条件下,在预定的使用年限内完成预期的安全性、适用性和_________功能的能力。
钢筋混凝土矩形偏心受压构件,判断大小偏压的条件是()。
一端固定,一端为弹性支撑的压杆,如图所示,其长度系数的范围为()。
将单元刚度矩阵分块,下列论述错误的是()
按照会计核算的处理程序,依次对证账表各个环节进行检查核对的审计方法是_______。
设有如下定义:intx=1,y=一1;则语句:printf(“%d\n”,(X-一&++y));的输出结果是()。
一棵左子树为空的二叉树在先序线索化后,其中空的链域的个数是()。
土木工程中的石灰主要技术指标有哪些?
随机试题
心骨骼的组织类型是()
如曰今日当一切不事事。事:
男性病人,51岁,有肝硬化病史8年余,近1年来常出现肝区持续性胀痛,乏力,发热等症状,抽血查甲胎蛋白增高。2h前突然发生腹部剧痛,有压痛、反跳痛并伴有腹膜刺激征,血压下降,腹腔穿刺有大量不凝的血性液,此时应考虑为()
8岁男性患儿,血尿、少尿1周,伴有眼睑水肿、乏力、腰酸。血压187/105mmHg。既往无肾脏疾病史。诊断少尿的标准是
处方管理若干规定A.10日B.7日C.5日D.3日E.1日每张处方第二类精神药品用量不得超过
属于主观方面的健康资料是
年末结账后,下列会计科目中一定没有余额的有()。
课程是教师、学生、教材、环境四个因素动态交互作用的“生态系统”。()
解决复杂问题,中等偏低的兴奋水平比较有利。()
今天出席董事会的6家公司代表合计12人,其中第四、五、六公司的董事均为2人,第一、二、三公司的董事人数却各不相同(从数字看没有一家公司董事的人数与其公司的序号相对应),而且董事长批评了与会人数最少的二公司。由此可断定出席本次会议人数最多的公司是()
最新回复
(
0
)