首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
专升本
要求函数的功能是在一维数组a中查找x值。若找到,则返回所在的下标值;否则,返回0。设数据放在数组元素的a[1]到a[n]中。在以下给出的函数中,不能正确执行此功能的函数是( )。
要求函数的功能是在一维数组a中查找x值。若找到,则返回所在的下标值;否则,返回0。设数据放在数组元素的a[1]到a[n]中。在以下给出的函数中,不能正确执行此功能的函数是( )。
admin
2014-10-20
39
问题
要求函数的功能是在一维数组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://kaotiyun.com/show/2lvR777K
本试题收录于:
计算机科学与技术题库普高专升本分类
0
计算机科学与技术
普高专升本
相关试题推荐
巨幼红细胞性贫血是由于()。
双筋矩形截面设计中,当出现X≤2as’,说明_________,可利用求受拉钢筋的数量。
已知柱的上端为铰支,下端为固定,柱的外径D=200mm,内径d=100mm,长度I=9m,材料为Q235钢,E=200GPa,则柱的临界应力为_________。
如特殊单元是几何不变体系,其单元刚度矩阵一定是非奇异矩阵。()
三民主义中民生主义的内容是()
“塞因塞用”适用于:()
关于混合血栓下列哪些叙述是不正确的()
慢性肺心病病人常有长时间二氧化碳潴留,若吸入大量纯氧可致呼吸暂停,该病人呼吸中枢兴奋性的维持主要靠
设字符串S1=“ABCDEF”,S2=”PQRS”,则运算S=CONCAT(SUB(S1,2,LEN(S2)),SUB(S1,LEN(s2),2))后的串值为______。
随机试题
第二信使
对于易溶于水而且在溶液中稳定的药物,可制成哪种类型注射剂
下面有关Addsion病的说法错误的是
适于片重较轻、硬度较大的薄膜包衣利用天然高分子物质制成的包封药物的微粒
按照《房屋建筑与装饰工程消耗量定额》TY01-31-2015的规定,现浇、预制钢筋混凝土楼梯,应分层按楼梯间墙的轴线内包水平投影面积以平方米计算,不扣除宽度小于()的楼梯井。
下列哪种活动反映了儿童的形象思维?()
中国共产党的第十五次代表大会提出()的目标。
下列选项中,______不属于Access中窗体的数据来源。
计算并填写下表:【5】
Whatdoesafirmdependonifitwantstodevelopandnottobethrownoutofthemarkets?Youmaysaythefirmshouldhavesome
最新回复
(
0
)