2017年5月 软件设计师 下午题之四
作者:mb63219befd42712023-11-20 01:00:14

备考咨询 刷题指导
添加专属学姐



摘要:对于【软件设计师】软考考试而言,真题无疑是最重要的学习资料之一。在软考备考过程中,吃透真题、掌握真题所考知识点、熟悉真题的出题思路,对我们提升分数的效果是最明显的,通过对真题的反复练习,还可以查漏补缺。今天,给大家带来【2017年5月 软件设计师 下午题】部分真题的详解,一起来看看吧~1、试题四(14分)阅读下列说明和C代码,回答问题 1 至问题 3,将解答写在答题纸

摘要:对于【软件设计师】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2017年5月 软件设计师 下午题】部分试题的详解,一起来看看吧~
1、试题四(14分)阅读下列说明和C代码,回答问题 1 至问题 3,将解答写在答题纸的对应栏内。【说明】假币问题:有n枚硬币,其中有一枚是假币,己知假币的重量较轻。现只有一个天平,要求用尽量少的比较次数找出这枚假币。【分析问题】将n枚硬币分成相等的两部分:(1)当n为偶数时,将前后两部分,即 1...n/2和n/2+1...0,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币:(2)当n为奇数时,将前后两部分,即1..(n -1)/2和(n+1)/2+1...0,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币;若两端重量相等,则中间的硬币,即第 (n+1)/2枚硬币是假币。【问题一】(6分)根据题干说明,填充C代码中的空(1)-(3)【问题二】(4分)根据题干说明和C代码,算法采用了( )设计策略。【问题三】(4分)若输入的硬币数为30,则最少的比较次数为( ),最多的比较次数为( )。
答案:
答题解析:
1、试题四(14分)阅读下列说明和C代码,回答问题 1 至问题 3,将解答写在答题纸的对应栏内。【说明】假币问题:有n枚硬币,其中有一枚是假币,己知假币的重量较轻。现只有一个天平,要求用尽量少的比较次数找出这枚假币。【分析问题】将n枚硬币分成相等的两部分:(1)当n为偶数时,将前后两部分,即 1...n/2和n/2+1...0,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币:(2)当n为奇数时,将前后两部分,即1..(n -1)/2和(n+1)/2+1...0,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币;若两端重量相等,则中间的硬币,即第 (n+1)/2枚硬币是假币。【问题一】(6分)根据题干说明,填充C代码中的空(1)-(3)【问题二】(4分)根据题干说明和C代码,算法采用了( )设计策略。【问题三】(4分)若输入的硬币数为30,则最少的比较次数为( ),最多的比较次数为( )。
答案:
见解析
答题解析:
【问题一】(6分)
(1)first+(last-first)/2+1 或(first+last)/2+1
(2)firstSum<lastSum
(3)first+(last-first)/2 或(first+last)/2
【问题二】(4分)
分治法、O(nlogn)
【问题三】(4分)
2、4
查看完整试题>>>
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>