资源简介 2.3用算法解决问题的过程一、选择题1.运用计算机程序解决问题时,下列步骤合理的是( )A.设计算法 分析问题 编写程序 调试程序B.分析问题 设计算法 编写程序 调试程序C.分析问题 编写程序 设计算法 调试程序D.设计算法 编写程序 分析问题 调试程序2.通过算法让计算机解决问题时,算法的要素包括( ) 。A.信息、运算、控制转移 B.数据、运算、控制转移C.信息、数据、运算 D.信息、数据、控制转移3.用计算机解决问题的过程中,( )是编程的核心。A.抽象建模 B.设计算法 C.编写程序 D.调试运行程序4.设有n位选手参加羽毛球循环赛,循环赛共进行n-1次,每位选手要与其他n-1位选手比赛一场,且每位选手每天比赛一场,不能轮空。实现循环赛日程表利用的算法是( )A.分治法 B.动态规划 C.贪心法 D.回溯法5.“大事化小、小事化了”体现出的问题求解的思想是( )A.递推法 B.穷举法 C.分治法 D.归纳法6.分治的设计思想,是将一个难以直接解决的大问题,分割成一些较小的同类问题,各个击破,最终达到解决问题的目的。分治法所能解决的问题所具有的特征,以下说法错误的是( )A.该问题可以分解为若于个规模较小的相同的子问题B.该问题的规模足够大C.该问题的规模缩小到一定的程度就可以很容易地解决D.将各个子问题的解可以合并为原问题的解7.刘丽编制计算机程序解决邮件加密的问题,需要经历以下的过程:分析问题→( )→编写程序→调试运行→检测结果 A.确定条件 B.设计算法 C.明确问题 D.建立模型8.利用编程解决问题的首要步骤是( )。A.设计算法 B.调试运行 C.分析问题 D.编写程序9.小明为机器人设计算法"机器人走棋盘",流程图如图1。根据这个算法,机器人从图2棋盘A位置沿箭头方向出发,将到达( )图1图2A.③位置 B.④位置 C.①位置 D.②位置10.用计算机解决问题的-般过程有四个步骤,其中正确的顺序是( )(1)解决问题(2)编程调试(3)设计方案(4)分析问题A.(1)(2)(3)(4) B.(1)(3)(2)(4)C.(4)(2)(3)(1) D.(4)(3)(2)(1)11.以下问题中,最适合用程序设计的方式解决的是( )A.求三元一次方程组的解 B.一组调查数据的图表表示C.编辑文稿 D.家庭装修设计12.水仙花数是三位整数:其各位数字立方各等于该数本身,如153=1^3+5^3+3^3,如果要求出所有的水仙花数,下列算法最合适的是( )A.枚举法 B.查找法 C.解析法 D.排序法13.程序设计中的“算法”其实就是()。A.解决问题的方法和步骤 B.能在计算机上解决的方法C.便于计算的方法 D.能通过电脑进行计算的方法14.以下问题最适合用计算机编程方法来处理的是( )。A.制作FlAsh动画B.计算全班同学的期末考试各科平均分C.找出10000以内的素数D.学习中遇到难题时,在因特网上搜索解决方法15.为了求数列12+32+52+72+……+992的和,以下说法错误的是( )。A.求和通常采用累加器逐个累加,这题要重复累加50次。B.这个问题通过循环结构解决。C.在Visual Basic中只能用do while/loop语句编程解决这个问题。D.解决这个问题的算法不需要输入。二、操作题16.“枚举算法”又称为“穷举法”,其基本思想是:一一列举出所有可能的解,并验证每个可能的解是否是真正的解,若是,就采纳,否则,就抛弃。小明利用枚举算法解决“百元买百鸡”问题。用100元钱买100只鸡,公鸡,母鸡,小鸡都要有。公鸡5元1只,母鸡3元1只,小鸡1元3只。请问公鸡,母鸡,小鸡各应该买多少只?假设公鸡有X只,母鸡有Y只,小鸡有Z只。以下Python程序段实现了“百元买百鸡”的功能,请补全①②③处代码。c = 0for x in ____① :for y in range(1,33):z = 100-x-yif ______② :print("公鸡:",x,"母鸡:",y,"小鸡:",z)_____③print("共有买法",c,"种")三、填空题17.解决问题:求m和 n的最大公约数。根据以下算法描述,回答问题。①输入m,n②以m为被除数,n为除数,r为m除以n的余数③判断r的值若r=0,输出公约数n若r≠0,则n将赋值给m,再将r赋值给n,转为执行步骤②(1)上述算法的描述方式是_____________。(2)若 m=2018,n =20,则最大公约数是_____________。(3)这个算法是著名欧几里德算法,又称_____________。(4)“r 为 m 除以 n 的余数”的 VB 语句是_____________。(5)上述算法是用程序的_____________结构实现。试卷第1页,共1页参考答案1.B【详解】本题主要考查计算机程序解决问题。运用计算机程序解决问题的一般步骤是:分析问题、设计算法、编写程序、调试程序,故本题选B选项。2.B【详解】本题主要考查算法解决问题。通过算法让计算机解决问题时,算法的要素包括数据、运算、控制转移,故本题选B选项。3.B【详解】本题主要考查计算机解决问题。用计算机解决问题的过程中,设计算法是编程的核心,编写程序依据算法,故本题选B选项。4.A【详解】本题主要考查分治算法。分治算法的基本思想将一个规模为N的问题,分解成K个规模较小的子问题,这些子问题相互独立且月原问题性质相同。循环赛共进行n-1次,每位选手要与其他n-1位选手比赛一场,且每位选手每天比赛一场,不能轮空。可知实现循环赛日程表利用的算法是分治法,故本题选A选项。5.C【详解】本题主要考查分治算法。分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同,求出子问题的解,就可得到原问题解。大事化小、小事化了,体现出的问题求解的思想是分治法,故本题选C选项。6.B【详解】本题主要考查算法与问题解决。分治策略是对于一个规模为n的问题,若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同,递归地解这些子问题,然后将各子问题的解合并得到原问题的解,该问题的规模缩小到一定的程度就可以很容易地解决,故本题选B选项。7.B【详解】本题主要考查编制程序解决问题。编制计算机程序解决问题,需要经历以下的过程:分析问题→设计算法→编写程序→调试运行→检测结果,故本题选B选项。8.C【详解】本题主要考查利用编程解决问题的步骤。利用编程解决问题的一般过程为:分析问题、设计算法、编写程序、调试运行,故本题选C选项。9.B【详解】本题主要考查算法流程图。当i<=4时,前进4格,当i>4时,右转,再前进,到达4位置,故本题选B选项。10.D【详解】本题考查的是计算机解决问题。用计算机解决问题的一般过程有四个步骤:分析问题——设计方案——编程调试——解决问题。故选项D正确。11.A【详解】本题考查的是计算机解决问题。当数据量很大,人工处理效率低时,我们可以借助计算机,通过编写计算机程序解决问题。一组调查数据的图表可以使用Excel表格生成,编辑文稿可以使用Word等文字编辑软件,家庭装修设计可以使用AutoCAD等制图软件来完成。故应选A。12.A【详解】本题考查的是算法。枚举法就是按问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,检验每个可能解是否是问题的真正解。查找是在大量的信息中寻找一个特定的信息元素。解析法又称为分析法,它是应用数学推导、演绎去求解数学模型的方法。排序法是对元素进行升序或降序排列。如果要求出所有的水仙花数,最适合的是枚举法。故选项A正确。13.A【详解】本题考查算法概念。算法就是解决问题的方法和步骤,指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。故本题选A。14.C【详解】本题主要考查计算机编程解决问题。找出10000以内的素数适合用计算机编程的方法通过for循环结构来实现,故本题选C选项。15.C【详解】本题主要考查编程解决问题。求和通常采用累加器逐个累加,这题要重复累加50次;这个问题通过循环结构解决;在Visual Basic中可以用do while/loop语句编程解决这个问题,也可以使用for循环解决;解决这个问题的算法不需要输入,故本题选C选项。16.range(1,20) 5*x+3*y+z/3 == 100 c = c+1【详解】本题考查的是python编程。X代表的是公鸡,公鸡5元一只,所以此处的range函数为range(1,20),左闭右开区间。if条件是满足三种鸡的总价格为100元的条件,故答案为5*x+3*y+z/3 == 100,注意这里是一个判断条件,用==表示。c代表的是有几种购买方案,当if条件满足时,即满足一种方案,执行方案数加1,c=c+1。17.自然语言描述 2 辗转相除法 r=m mod n 循环结构【详解】本题主要考查用算法解决问题的过程。①上述算法的描述方式自然语言描述。②按照算法描述,m=2018,n=20,r=2018 mod 20=18,第二遍循环,m=n=20,n=r=18,r=20 mod 18=2,第三遍循环,m=n=18,n=r=2,r=18 mod 2=0,输出公约数n=2,故最大公约数是2。③这个算法是著名欧几里德算法,又称辗转相除法。④“r为m除以n的余数”的VB语句是r=m mod n。⑤上述算法是用程序的循环结构实现。答案第2页,共3页答案第3页,共3页 展开更多...... 收起↑ 资源预览