2017年软考程序员考试下午真题(4)
软工小法师
2024-04-18 03:56
编程学习网小编为大家整理了2017下半年程序员考试下午真题,以下为第四部分。
2017年下半年程序员考试下午真题(4)
试题四(共 15 分〉
阅读以下说明、 C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内。
【说明】
当数组中的元素已经排列有序时,可以采用折半查找(二分查找)法查找一个元素。下面的函数 biSearch(int r[],int low,int high,int key)用非递归方式在数组r中进行二分查找,函数 biSearch_rec(int r[],int low,int high,int key)采用递归方式在数组r中进行二分查找,函数的返回值都为所找到元素的下标;若找不到,则返回-1.
【函数 1】
int biSearch(int r[],int low,int high,int key)
//r[low..high] 中的元素按非递减顺序排列
//用二分查找法在数组r中查找与key相同的元素
//若找到则返回该元素在数组r的下标,否则返回-1
int mid;
while(____){
mid = (low+high)/2 ;
if (key ==r[mid])
Return mid;
else if (key<r[mid])_________;< p="">
else
____________;
}
retum-1;
}
【问题1 】(12分)
请填充 C 函数1和C函中2中的空缺,将解答填入答题纸的对应栏。
【问题2 】(3分)
若有序数组中有n个元素,采用二分查找法查找一个元素时,最多与—个数组元素进行比较,即可确定查找结果。
(7)备选答案
A. [log2(n+1)]
B. [n/2]
C. n-1
D. n
从下4列的 2 道试题(试题五至试题六)中任选1道解答。请在答题纸上的指定位置处将所选择试题的题号框涂黑。若多涂或者未涂题号框,则对题号最小的一道试题进行评分。
>>>>返回目录:2017下半年程序员考试下午真题(汇总)
想要报考2018年软考的朋友现在就可以开始备考了,可以报名编程学习网软考学院,编程学习网软考学院含有软考各科目赠送考试:辅导教材、历年真题、考前冲剌资料、在线模拟测试题库,还有老师专属答疑指导等,帮助大家顺利通过考试。
>>>>>>点击进入软考报名专题
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341