内容正文:
2.2 算法的控制结构
一、选择题
1.在设计算法时,以下哪个不是算法的基本控制结构( )
A.顺序结构 B.选择结构 C.循环结构 D.随机结构
2.下图所示算法的控制结构是( )
A.顺序结构 B.选择结构 C.真假结构 D.循环结构
3.某算法部分流程图如图所示,执行该部分流程图后,变量 s 和变量 i 的值分别为( )
A.9 和 5 B.16 和 7 C.16 和 5 D.9 和 7
4.党的二十大报告提出加快建设农业强国,到2035年基本实现农业现代化的目标,为实现农业现代化擘画出了清晰的时间表和路线图。如今,随着人工智能、物联网、大数据、5G等信息技术的发展,我国部分区域已经进入了农业4.0的初探阶段。平台中的“农作物检测功能”部分算法描述如流程图所示,其主要使用的算法基本控制结构有( )
A.循环结构、分支结构 B.分支结构、顺序结构 C.循环结构、顺序结构
5.若执行时输入500,700;以上流程图描述的算法执行结果是( )。
A.1200 B.500 C.960 D.720
6.某算法的部分流程图如图所示,若输入n的值为3,执行该部分流程,则输出的结果是( )
A.0011 B.1100 C.011 D.11
7.某算法流程图如图所示,执行该算法,输出n的结果是( )
A.4 B.8 C.12 D.18
8.某算法的部分流程图如图所示,执行时若输入s的值为″21032″,k的值为3,则下列说法正确的是( )
A.输出ans的值为65
B.执行结束时i的值为4
C.语句ans←ans*k+x执行了3次
D.若将语句“x←int(s[i])”修改为“x←ord(s[i])-ord(″0″)”,则输出结果将改变
9.某算法的部分流程图如图所示,执行这部分流程,若输出m的值为0,则输入d的值不可能是( )
A.50 B.202505 C.10110100 D.9876543210
10.在某银行取款机上,用户银行卡密码验证的过程如下图所示:当用户输入密码时,若第1次输入错误,第2次输入才正确,则整个操作过程的执行流程是( )
A.①→②→③→④→⑤
B.①→②→③→④→⑥→⑦
C.①→②→③→④→⑥→②→③→④→⑤
D.①→②→③→④→⑥→⑦→②→③→④→⑤
11.某算法的部分流程图如下图所示,执行这部分流程,若输入i的值为序列[2, 3, 4, 5]中的随机数,则下列说法正确的是( )
A.变量c的最大值为11 B.“a>0?”至少执行5次
C.程序结束时变量a一定等于0 D.只能使用while语句实现该循环结构
12.某算法的流程图如图所示,执行这部分流程,若输入n的值为21,则输出k的值是( )
A.1 B.2 C.3 D.0
13.某算法的部分流程图如图所示,当n,k的值分别输入13和2时,执行这部分流程后,下列说法正确的是( )
A.步骤n≠0?共执行了4 次 B.步骤r←n % k共执行了4 次
C.交换s←str(r)+s和n←n//k的位置会影响执行结果 D.输出的s值为"1011"
二、填空题
14.计算机程序语言解决“””这一问题时,主要用到的程序基本结构是 结构。
15.某算法的部分流程图如图所示,执行这部分流程后,变量a的值是 ,变量b的值是 。
16.以下流程图当输入73时,运行后输出的结果是 。(不填写引号)
17.依次输入8、7、9,以下流程图的算法执行结果是 。
\
18.为了及时做好防暑降温工作,各城市气象部门及时预报天气气温,发布高温预警信息。小申采集了部分城市气象部分发布的某日14时气温预报数据,并设计了一个算法,统计发布黄色预警的城市数量。请参考下表,填写流程图空白处的语句,将算法设计完整。
(1)处应该填入
三、判断题
19.顺序控制结构的程序是自上而下依次执行,必须有一个输入和一个输出。( )
20.根据空气湿度测定值,判断空气湿度是否处于相对舒适范围的算法,需要用到分支(选择)结构。( )
21.在用乘车卡乘车时,当卡内余额不足,系统会给出提示信息,请乘客投币。在对这一过程设计算法时,必须要用到算法的选择结构。( )
22.选择结构中,无论条件是否成立,都可以同时执行两个步骤。( )
四、操作题
23.为了更加清晰地了解学生的课程选修需求,小申将对六个课程门类(艺术类、运动类、文史类、语言类、科学类、设计类等)的选修人数等数据进行统计和分析。小申想设计一个算法实现文史类课程的选修学生人数统计。请选择合适的框图,将其拖至右边流程图的虚线框内进行组合并在① 处填空。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.D
【详解】本题考查算法。算法的基本控制结构主要包括三种:顺序结构、选择结构和循环结构。随机结构并不属于算法的基本控制结构。算法的基本控制结构应该是明确、可预测和可控制的,而随机结构则意味着执行流程中存在不确定性,这不符合算法设计的基本要求。故选择D。
2.B
【详解】本题主要考查算法控制结构。由图可知,该算法的控制结构是选择结构,故本题选B选项。
3.D
【详解】本题主要考查算法流程图的执行。分析流程图可知,循环条件是i<=6,i的初值为1,每次循环执行s=s+i,i=i+2,故i的可取值依次是1、3、5、7,循环结束后,s=s+i=0+1++3+5=9,故本题选D选项。
4.B
【详解】本题主要考查算法控制结构。由图可知,主要使用的算法基本控制结构有分支结构和顺序结构,故本题选B选项。
5.D
【详解】本题主要考查算法流程图的执行。X=500,Y=700,Z=X+Y=1200,满足Z>499,满足Z>999,执行Z=0.6*Z=0.6*1200=720,故算法执行结果是720,故本题选D选项。
6.A
【详解】本题考查算法流程图。首先将i赋值为0,s赋值为空字符串。第一次循环,i<4条件满足,t=n%2=1,s=“1”,n=n//2=1,i=i+1=1;第二次循环,i<4条件满足,t=n%2=1,s=“11”,n=n//2=0,i=i+1=2;第三次循环,t=n%2=0,s=“011”,n=n//2=0,i=i+1=3;第四次循环,i<4条件满足,t=n%2=0,s=“0011”,n=n//2=0,i=i+1=4;第五次循环,i<4条件不满足,输出s,即输出结果为0011。故答案为A选项。
7.C
【详解】本题主要考查算法读取。题中mod用于取余运算,执行过程为m=96,n=36,r=24—> m=36,n=24,r=12—> m=24,n=12,r=0,此时跳出循环,输出n,结果为12,因此C选项正确。
8.A
【详解】本题主要考查算法流程图的执行。ans的值依次是0、2、7、21、65,因此输出ans的值为65;执行结束时i的值为5;语句ans←ans*k+x执行了4次;若将语句“x←int(s[i])”修改为“x←ord(s[i])-ord(″0″)”,则输出结果将不变,故本题选A选项。
9.B
【详解】本题主要考查算法流程图的执行。对于选项A,d= 50,m = 0,判断d > 0成立,r=d%10=0,m=m+(-1)**0=1,d= d//10= 5,d=5,m=1,判断d>0成立,r= d%10= 5,m= m+ (-1)* *r=0,d= d//10= 0,循环结束,结论成立;选项B, d = 202505,m = 0,判断d>0成立,r= d%10=5,m= m+(-1)* *0=-1,d= d//10 = 20250,d=20250,m=-1,判断d>0成立,r=d%10=0,m=m+(-1)**0=0,d= d//10 = 2025,d=2025,m=0,判断d>0成立,r= d%10=5,m= m+(-1)**0=-1,d= d//10 = 202,最终得到m=2,不符合输出为0的要求,选项C、D经验证成立,故本选B选项。
10.C
【详解】本题考查的是流程图识读。若第1次输入错误,执行流程为:①→②→③→④→⑥→②,第2次输入才正确,执行流程为:②→③→④→⑤,故选项C正确。
【点睛】
11.B
【详解】本题考查流程图及循环结构相关内容。分析流程图及各变量初始状态可以得出:
A选项,变量c具有统计循环执行次数的作用,当随机数i每次都取最小值2时,循环执行次数最大,a由20开始,“a>0?”循环条件成立,进入循环,a每次-2,c每次+1,。当a=0时,a>0循环条件不成立,结束循环,此时循环执行10次,C的值为10,故C的最大值为10,选项错误;
B选项,“a>0?”的执行次数由随机数i的取值决定,当i每次都为最大值5时,“a>0?”执行次数最少。“a>0?”执行成立时,执行a=a-i操作,a的值变化情况:20、15、10、5、0,当a=0时,“a>0?”执行最后一次,循环条件不成立,无法进入循环。故“a>0?”执行至少执行5次,选项正确;
C选项,程序结束时变量a不一定等于0,当随机数i每次都取3,“a>0?”执行成立时,执行a=a-i操作,a的值变化情况:20、17、14、11、8、5、2、-1,当a=-1时,循环条件“a>0?”不成立,无法进入循环,选项错误。
D选项,循环语句有:for语句、while语句、do...while语句等形式,相互之间可以转换,均能实现相同功能。选项错误。
故本题答案是B选项。
12.A
【详解】本题考查的是流程图识读。依据流程图可知这是将十进制数n转换为二进制数,求二进制数中1的个数比0的个数多多少。21转换为二进制数为:10101,该二进制数中1的个数比0的个数多1,故本题应选A。
13.B
【详解】本题主要考查算法流程图的执行。13//2=6,6//2=3,3//2=1,1//2=0,循环条件是n不等于0,故一共循环了4次,但步骤n≠0?共执行了5 次;交换s←str(r)+s和n←n//k的位置不会影响执行结果;该程序实现将十进制n转换为二进制数,故输出的s值为"1101",故本题选B选项。
14.循环
【详解】本题主要考查算法控制结构。该问题可以通过循环结构实现求解,故主要用到的程序基本结构是循环结构。
15. 1 4
【详解】本题主要考查算法流程图的执行。a=6,b=5,满足a>b,执行a=a-b=6-5=1,b=b-a=5-1=4;第二遍循环,不满足a>b,循环结束。故执行这部分流程后,变量a的值是1,变量b的值是4。
16.pass
【详解】本题考查算法流程图的识读。输入73,即y=73,满足y≥60,输出pass。
17.9
【详解】本题考查的是流程图识读。依次输入8、7、9,7>8不成立,9>8成立,执行a、c变量交换,交换后a=9。
【点睛】
18.35<=i<37 或 i>==35 and i<37
【详解】本题主要考查算法流程图的分析。统计发布黄色预警的城市数量,由图可知,黄色预警的气温范围是:35℃≤气温<37℃,因此(1)处应填35<=i<37 或 i>==35 and i<37。
19.错误
【详解】本题主要考查算法控制结构。顺序控制结构的程序是自上而下依次执行,可以有0个或多个输入,但至少有一个输出,故表述错误。
20.正确
【详解】本题考查选择结构的描述。选择结构,根据某个特定的条件进行判断后,选择其中一支执行。根据空气湿度测定值,判断空气湿度是否处于相对舒适范围的算法,需要用到分支(选择)结构。表述正确。
21.正确
【详解】本题考查的是算法结构。选择结构会依据条件选择其中一个分支执行。在用乘车卡乘车时,当卡内余额不足,系统会给出提示信息,请乘客投币。在对这一过程设计算法时,必须要用到算法的选择结构。说法正确。
22.错误
【详解】本题考查的是算法结构。选择结构中,根据条件来选择执行的步骤。故题干中说法错误。
23.①count=count+1
【详解】本题主要考查算法流程图的设计。菱形是条件判断框,平行四边形是数据输入/输出框,圆角矩形是开始/结束框,矩形是数据处理框。根据题干要求及流程图,流程图具体连接如下,其中当data_ws[i]=1时,count递增1,即①处填count=count+1。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$