ImageVerifierCode 换一换
格式:ZIP , 页数:0 ,大小:2MB ,
文档编号:1683094      下载积分:2 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-1683094.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(大布丁)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文((2021新教科版)高中信息技术必修一2.3周而复始的循环-练习.zip)为本站会员(大布丁)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

(2021新教科版)高中信息技术必修一2.3周而复始的循环-练习.zip

1、2.3 周而复始的循环周而复始的循环-教科版(教科版(2019)高中信息技术必修一练)高中信息技术必修一练 习习 学校:_姓名:_班级:_考号:_ 一、选择题一、选择题 1下面的程序段运行后的结果为( ) s=1 for i in range(1,6,2): s=s+i print(s) A15B10C12D9 2某算法的部分流程图如下图所示,输入 s=11200,执行这部分流程后,输出 m 和 n 的值分别是( ) A14 4 B21 4 C22 5 D42 5 3有两个 VB 程序段,如下所示: 已知程序段中两处内容相同,数组元素 a(1)到 a(10)的值依次为: 6,43,21,78,

2、33,16,80,45,12,90,执行“程序段 1”后,数组元素 a(1)a(10)的 值依次为 80,78,90,45 ,43,33,21,16,12,6,则下列说法正确的是() A和处的填空为 7 B两程序段的比较次数不一样,交换次数一样 C执行完程序段 2 后,数据 6 移动到了 a(10) D两段程序的得到的运行结果相同 4有如下 VB 程序段: i = 1 Do While i a(i-1) Then End If If k=1 Then s=s+1 Nexti Textl.Text=Str(s) 方框中的代码由以下三部分组成: k=0 k=k+1 Else 代码顺序正确的选项是(

3、 ) ABCD 6有如下 VB 程序段: Const n= 10 Dim a(1 To n) As Integer , b(1 To n) As Integer For i = 1 To n b(i) = i Next i For i = 2 To n j = i - 1 t = b(i) Do While a(b(j) a(t) b(j + 1) = b(j) j = j - 1 If j = 0 Then Exit Do Loop b(j + 1) = t Next i 若数组 a 中的数据依次为:69,16,44,17,34,46,10,29,37,51 ,执行程序后, b(1)b(10

4、)的值为( ) A3 5 4 10 1 9 8 6 7 2B7 2 4 8 5 9 3 6 10 1 C5 8 2 1 4 7 3 9 10 6D1 6 2 4 8 9 7 10 3 5 二、操作题二、操作题 7出列顺序有 10 个人,编号分别为 1,2,310 按顺时针方向围坐成一圈,每次 随机产生一个数 m,m 的范围为3,7的随机奇数,从第 10 个人开始逆时针报数,当 报到 m 的人出列,圈内剩下的人,重新产生随机数 m,重新开始报数,如此下去,直 到所有人出列为止。如:若每次参数的随机数 m 都为 5,从第 10 个开始报数,依次出 列的为 6-1-5-9-2-3-10-7-4-8

5、小李编写了如下程序求解 10 个人的出列顺序。程序运行界面如图 1 所示,点击求解按 钮后,在 Textl 中输出出列顺序,在 Text2 中显示随机数据的值。 (1)在划线出填写正确的代码 Private Sub Command1 _Click() Dim ld(1 To 10) As Boolean, i As Integer, j As Integer Dim rs As Integer, C As Integer, m As Integer Randomize For i=1 To 10 ld(i) = True数组元素为 True 表示第 i 人当前在队列中 Next i c=0:r

6、s=10 _ m =Int(Rnd*3)*2+3 Do While rs 0 If ld(i) = True Then _ If c=m Then ld(i) = False Text1.Text = Text1.Text + Str(i) _ c=0 End If End If i =i-1 If _Then i=10 Loop End Sub (2)加框处两语句互换下顺序,会不会对出列顺序产生影响_(选填:会/不会) 。 8求不大于 n 的五位正整数中,满足高两位与低两位相同,且能被 3 除余 2 的所有数 之和。 (1)本题适用的算法是( ) ,此算法的基本实现方法是( ) 。 A枚举算

7、法,循环中嵌套循环 B查找算法,循环中嵌套分支 C枚举算法,循环中嵌套分支 D查找算法,循环中嵌套循环 (2)设 x 为五位正整数,以下检验条件的分析,正确的是( ) 。 Ax 100 = x mod 100 and x mod 3=2 Bx 1000 = x mod 100 and x mod 3=2 Cx 100 = x mod 1000 and x mod 3=2 Dx 1000 = x mod 1000 and x mod 3=2 (3)请编写程序,完成题目要求的功能。 9小奕同学基于排序算法设计了一个数字矩阵排序的程序。程序界面如下图所示,在 文本框中输入矩阵大小,点击“生成”按钮

8、Command1,在左侧列表框 List1 中输出一 个长宽均为指定大小的随机整数矩阵,随机整数范围为1,99。点击“排序”按钮 Command2,结果输出在右侧列表框 List2 中,奇数行从左到右依次递增,偶数行从右 至左依次递增,且保持输出矩阵的长宽不变。 (1)实现上述功能的 VB 程序如下,显示数据用的 additem 是一种_(单选,填 字母:A属性名/B事件名/C方法名/D过程名)。 (2)请在划线处填入合适的代码。 (3)程序中加框处代码有错,请改正。 Dim a (1 To 100) As Integer Dim n As Integer Function dq (s As

9、String,L As Integer) As String 自定义对齐函数 Rem 在输入的字符串 s 前加若干空格,输出长度为 L 的字符串,代码略 End Function Private Sub Command1_Click()生成数字矩阵 随机生成 n2 个数字,存储在数组 a 中,代码略 以一行 n 个,共 n 行的格式显示在 List1 中,代码略 End Sub Private Sub Command2_Click数字矩阵排序 Dim i As Integer,k As Integer,j As Integer,s As String Dim f As Boolean List

10、2.Clear f = True For i = 1 To n2 Step n s= For j = i To k=n2 Do While If a(k) sum Then sum = temp + hsum(i) length = i - begin k = i ElseIf temp + hsum(i) = sum And_ Then length = i - begin k = i End If If temp + hsum(i) 0 Then begin = i temp = 0 Else temp = temp + hsum(i) End If Next i ks =( +_+ ,

11、+ Str(xy(2) + ) 开 始 位 置 js =( + Str(k + xy(1) - 1) + , + Str(xy(4) + ) 结束位置 Label3.Caption = 最大子矩阵和为 : + Str(Sum) Label4.Caption = 子矩阵中的元素个数为: + Str(length * (xy(4) - xy(2) + 1) Label5.Caption = 子矩阵位置为: + ks + , + js End Sub 11使用 Python 自身提供的 IDLE 集成开发环境录入以下代码及调试 运行,检测结果。 # 鸡兔同笼 for x in range(1,23)

12、: y=35-x if 4*x+2*y=94: print(兔子有%s 只,鸡有%s 只%(x,y) 特别提示:代码录入完毕,调试运行,检测错误,讨论错误原因,上网查找错误格式 的处置办法,直至能正确输出结果。 12请编写 Python 程序,实现如下功能需求: 1)程序运行后,给出文字提示:“请输入一个正整数:” 2)输入一个整数 n 按回车后,程序输出从 1-n 所有整数中既是 3 的倍数又是 5 的倍数 的数。 3)不要超过 5 行代码。 程序运行举例: 13某考试的多选题有“A、B、C、D、E”5 个答案选项。阅卷的评分标准为:“全 部选对的得 2 分,选对但不全的得 1 分,不选或有

13、选错的得 0 分” 。阅卷算法描述如下: 例如,标准答案为“ABE” ,则对应得分表如下所示。 学生答案ABEABAEBEABEAC. 字符串1100111000100010100110000010000000110100. 十进制数 (x) 2524179168120. ans(x)211111100 小温依据上述描述设计了“多选题阅卷”的 VB 程序,实现如下功能:在文本框 Text1 中输入标准答案(大写字母) ,先单击“初始化”按钮 Command1,在数组 ans 中 生成所有答案组合对应 的分值,然后单击“阅卷”按钮 Command2,从数 据 库中读取学生的答案并进行阅卷,在列表

14、框 List1 中显示得分结果。程序运行界面如图 所示。 (1)若标准答案为“ACD” ,则数组元素 ans (18)的值为 (2)请在划线处填入合适的代码。 Dim ans(0 To 31) As Integer Private Sub Command1_Click() Dim b(0 To 4) As Integer Dim s As String, c As String, sum As Integer, k As Integer 初始化数组 ans 和数组 b,各元素的初始值均为 0。代码略 s = Text1.Text:k = Len(s) For i = 1 To k c = Mi

15、d(s, i, 1) b(Asc(c) - 65) = 2 (69 - Asc(c) Next i For i = 0 To 4 If b(i) 0 Then ans(b(i) = 1 sum = End If Next i ans(sum) = 2 当标准答案含 3 个及以上选项时,学生答案选其中 2 个选项可得 1 分 i = 0 Do While k = 3 And i = 4 For j = i + 1 To 4 If b(i) * b(j) 0 Then ans(b(i) + b(j) = 1 Next j i = i + 1 Loop 当标准答案含 4 个及以上选项时,学生答案选其

16、中 3 个选项可得 1 分 i = 0 Do While k = 4 And i = 97 Then a(t) = a(t) + 1 sum(t) = sum(t) + sScore(i) Next i For i = 1 To nc ave(c(i) = Int(sum(c(i) / b(c(i) * 100 + 05) / 100 Next i For i = 1 To nc - 1 For j = nc To i + 1 Step -1 If Then t = c(j): c(j) = c(j - 1): c(j - 1) = t End If Next j Next i For i =

17、 1 To nc List2.AddItem Str(c(i) + + Str(b(c(i) + + Str(a(c(i) + + Str(ave(c(i) Next i End Sub Private Sub Form_Load() 链接数据库,代码略 recCount = 0 Do While Not rsEOF recCount = recCount + 1 sClass(recCount) = rs.Fields(class) sName(recCount) = rs.Fields(name) sScore(recCount) = rs.Fields(score) rs.MoveNex

18、t Loop 将数据显示在列表框 List1 中,代码略 End Sub 三、填空题三、填空题 15以下流程图描述的算法,执行结果是_。 16如图所示,这是打印九九乘法表的程序,请你完善程序。 Private Sub Form_click() Dim i As Integer, j As Integer For i = 1 To _ For j = 1 To _ Print j; *; i; =; i * j; Next j Print 换行 Next i End Sub 2.3 周而复始的循环-教科版(2019)高中信息技术必修一练 习 学校:_姓名:_班级:_考号:_ 一、选择题 1下面的

19、程序段运行后的结果为( ) s=1 for i in range(1,6,2): s=s+i print(s) A15B10C12D9 【答案】B 【解析】 【详解】 本题主要考查程序的运行。for 循环中,变量 i 的变化是 1,3,5,7,当 i=7 时退出循 环,此时 s 的值为,s=1+1+3+5=10,故本题选 B 选项。 2某算法的部分流程图如下图所示,输入 s=11200,执行这部分流程后,输出 m 和 n 的值分别是( ) A14 4 B21 4 C22 5 D42 5 【答案】C 【解析】 【分析】 【详解】 本题主要考查循环结构流程图的读取。 第一次循环:m=0*3+112

20、00 mod 10=0+0=0 n=1 s=1120010=1120 第二次循环:m=0*3+1120 mod 10=0+0=0 n=2 s=112010=112 第三次循环:m=0*3+112 mod 10=0+2=2 n=3 s=11210=11 第四次循环:m=2*3+11 mod 10=6+1=7 n=4 s=1110=1 第五次循环:m=7*3+1 mod 10=21+1=22 n=5 s=110=0 当 s0 不成立时,跳出循环,输出 m=22 n=5,因此 C 选项正确。A、B、D 选项均不 正确。 3有两个 VB 程序段,如下所示: 已知程序段中两处内容相同,数组元素 a(1)

21、到 a(10)的值依次为: 6,43,21,78,33,16,80,45,12,90,执行“程序段 1”后,数组元素 a(1)a(10)的 值依次为 80,78,90,45 ,43,33,21,16,12,6,则下列说法正确的是() A和处的填空为 7 B两程序段的比较次数不一样,交换次数一样 C执行完程序段 2 后,数据 6 移动到了 a(10) D两段程序的得到的运行结果相同 【答案】A 【解析】 【详解】 本题考查冒泡排序。根据题干,执行“程序段 1”后,数组元素 a(1)a(10)的值依次 为 80,78,90,45 ,43,33,21,16,12,6,可知 a(10)-a(4)实现排

22、序,故整个排 序执行了七趟。根据程序段 1,双重 for 循环的内循环 for j=1 to 10-i,这是一个下 沉的排序,对整个程序段总共要执行七趟,那么 i 的变化是 1-7,故外循环填入 7。选 项 A 正确。两个程序段都执行七趟,比较次数一样。执行完程序段 2 后,数据 6 移动 到了 a(8)。故本题选 A。 4有如下 VB 程序段: i = 1 Do While i a(i-1) Then End If If k=1 Then s=s+1 Nexti Textl.Text=Str(s) 方框中的代码由以下三部分组成: k=0 k=k+1 Else 代码顺序正确的选项是( ) AB

23、CD 【答案】B 【解析】 【详解】 本题考查的是 VB 循环、选择语句。阅读程序可知,k 表示每个升序段中元素的个数, s 是表示升序段的个数。由 If a(i)a(i-1) Then 可知,接下来升序段中元素的个数增加 1,否则为统计下一个升序段中元素的个数做准备即 k=0。故代码顺序为:。 选项 B 正确。 6有如下 VB 程序段: Const n= 10 Dim a(1 To n) As Integer , b(1 To n) As Integer For i = 1 To n b(i) = i Next i For i = 2 To n j = i - 1 t = b(i) Do W

24、hile a(b(j) a(t) b(j + 1) = b(j) j = j - 1 If j = 0 Then Exit Do Loop b(j + 1) = t Next i 若数组 a 中的数据依次为:69,16,44,17,34,46,10,29,37,51 ,执行程序后, b(1)b(10)的值为( ) A3 5 4 10 1 9 8 6 7 2B7 2 4 8 5 9 3 6 10 1 C5 8 2 1 4 7 3 9 10 6D1 6 2 4 8 9 7 10 3 5 【答案】B 【解析】 【分析】 【详解】 本题主要考查 VB 中数组及循环结构的使用。 “Exit Do”用以跳

25、出 Do 循环,Do 循环 的循环条件为“a(b(j) a(t)” ,由题意可知为“a(b(i-1) a(b(i)” ,程序执行中数组 b 变化过程为:2,1,3,4,5,6,7,8,9,102,3,1,4,5,6,7,8,9,10 2,4,3,1,5,6,7,8,9,102,4,5,3,1,6,7,8,9,10 2,4,5,3,6,1,7,8,9,10,7,2,4,5,3,6,1,8,9,10 7,2,4,8,5,3,6,1,9,107,2,4,8,5,9,3,6,1,10 7,2,4,8,5,9,3,6,10,1。故 B 选项正确。其余选项均不符合题意。 二、操作题 7出列顺序有 10 个

26、人,编号分别为 1,2,310 按顺时针方向围坐成一圈,每次 随机产生一个数 m,m 的范围为3,7的随机奇数,从第 10 个人开始逆时针报数,当 报到 m 的人出列,圈内剩下的人,重新产生随机数 m,重新开始报数,如此下去,直 到所有人出列为止。如:若每次参数的随机数 m 都为 5,从第 10 个开始报数,依次出 列的为 6-1-5-9-2-3-10-7-4-8 小李编写了如下程序求解 10 个人的出列顺序。程序运行界面如图 1 所示,点击求解按 钮后,在 Textl 中输出出列顺序,在 Text2 中显示随机数据的值。 (1)在划线出填写正确的代码 Private Sub Command1

27、 _Click() Dim ld(1 To 10) As Boolean, i As Integer, j As Integer Dim rs As Integer, C As Integer, m As Integer Randomize For i=1 To 10 ld(i) = True数组元素为 True 表示第 i 人当前在队列中 Next i c=0:rs=10 _ m =Int(Rnd*3)*2+3 Do While rs 0 If ld(i) = True Then _ If c=m Then ld(i) = False Text1.Text = Text1.Text + St

28、r(i) _ c=0 End If End If i =i-1 If _Then i=10 Loop End Sub (2)加框处两语句互换下顺序,会不会对出列顺序产生影响_(选填:会/不会) 。 【答案】 i=10 c=c+1 rs=rs-1 i=0 不会 【解析】 【详解】 本题考查 VB 综合能力。 (1)初始化 i 的值,填入 i=10。 (2)报数数量加 1,填入 c=c+1。 (3)出列后总人数减 1,故填入 rs=rs-1。 (4)当 i=0 时候,代表转到了最后 一人,故 i=10。 (5)对出列顺序没有影响。 8求不大于 n 的五位正整数中,满足高两位与低两位相同,且能被 3

29、 除余 2 的所有数 之和。 (1)本题适用的算法是( ) ,此算法的基本实现方法是( ) 。 A枚举算法,循环中嵌套循环 B查找算法,循环中嵌套分支 C枚举算法,循环中嵌套分支 D查找算法,循环中嵌套循环 (2)设 x 为五位正整数,以下检验条件的分析,正确的是( ) 。 Ax 100 = x mod 100 and x mod 3=2 Bx 1000 = x mod 100 and x mod 3=2 Cx 100 = x mod 1000 and x mod 3=2 Dx 1000 = x mod 1000 and x mod 3=2 (3)请编写程序,完成题目要求的功能。 【答案】 (

30、1) C (2) B (3) Dim x As Long, s As Double, n As Long n = val(InputBox(输入) s = 0 For x = 10000 To n Step 1 If x 1000 = x Mod 100 And x Mod 3 = 2 Then s = s + x End If Next x Print s 【解析】 【详解】 本题考查 VB 综合能力。 (1)求不大于 n 的五位正整数中,满足高两位与低两位相同, 且能被 3 除余 2 的所有数之和适合采用枚举算法,枚举算法是指从所有候选答案中去 搜索正确的解,使用该算法需要满足两个条件,所

31、以在代码中需要分支结构。故选 C。 (2)x 1000 = x mod 100 and x mod 3=2 可以判断高两位与低两位相同,且能被 3 除 余 2 的整数,故选 B。 (3)根据题目意思,完成代码。 9小奕同学基于排序算法设计了一个数字矩阵排序的程序。程序界面如下图所示,在 文本框中输入矩阵大小,点击“生成”按钮 Command1,在左侧列表框 List1 中输出一 个长宽均为指定大小的随机整数矩阵,随机整数范围为1,99。点击“排序”按钮 Command2,结果输出在右侧列表框 List2 中,奇数行从左到右依次递增,偶数行从右 至左依次递增,且保持输出矩阵的长宽不变。 (1)实

32、现上述功能的 VB 程序如下,显示数据用的 additem 是一种_(单选,填 字母:A属性名/B事件名/C方法名/D过程名)。 (2)请在划线处填入合适的代码。 (3)程序中加框处代码有错,请改正。 Dim a (1 To 100) As Integer Dim n As Integer Function dq (s As String,L As Integer) As String 自定义对齐函数 Rem 在输入的字符串 s 前加若干空格,输出长度为 L 的字符串,代码略 End Function Private Sub Command1_Click()生成数字矩阵 随机生成 n2 个数字

33、,存储在数组 a 中,代码略 以一行 n 个,共 n 行的格式显示在 List1 中,代码略 End Sub Private Sub Command2_Click数字矩阵排序 Dim i As Integer,k As Integer,j As Integer,s As String Dim f As Boolean List2.Clear f = True For i = 1 To n2 Step n s= For j = i To k=n2 Do While If a(k) = j+1 f = Not f (3) i+n-1 【解析】 【详解】 本题考查 VB 综合能力。 (1)addit

34、em 是一种方法名。 (2)第一空,DO While 循环是冒 泡排序的内循环,根据题干,每次排序排第 i 行的 n 个数据,从 a(j)到 a(j+n-1)的排 序,故填入 k=j+1。 (3)第二空,f 代表奇偶行,奇数行 f 为 True,偶数行反之,故 填入 f=Not f。 (4)每次排序排第 i 行的 n 个数据,加框处改为 i+n-1。 10求最大连续子矩阵和。给出一个矩阵,序列元素有正整数、0、负整数,在矩阵中 限定一块区域,并要求找到该限定区域内的一个子矩阵,使得这个子矩阵与限定区域 同宽但可能不同高,且包含的所有元素之和为限定区域矩阵中最大值,在和最大的前 提下还要求该子矩

35、阵包含的元素个数最多。 算法描述如下: (1)从第一行开始向下进行累加,累加和若大于之前的最大和,则记录此时的最大和 及结束位置; (2)若累加和等于之前的最大和,但元素个数大于之前的最大和的元素个数,则记录 此连续子矩阵的结束位置; (3)若累加和小于 0,则重新开始记录; (4)若有符合条件的多个连续子矩阵,则输出最先找到的子矩阵。 小俞编写了一个实现该功能的 VB 程序,窗体加载时生成 m*n 个序列数据,依次 存放在数组 a,并显示在列表框 List1 中,在文本框 Text1 中输入该矩阵限定区域的 左上角位置,在文本框 Text2 中输入右下角位置,单击“计算”按钮 Command

36、1 后, 找出连续和最大的子矩阵,在标签 Label3 上显示最大连续子矩阵和,在 Label4 上显 示该连续子矩阵的元素个数,在 Label5 上显示该连续子矩阵开始与结束位置。程序 运行界面如图所示。 (1)在设计程序界面时,要清空文本框中的显示内容,应修改文本框的_ 属性 (2)VB 程序代码如下,请在划线处填入合适的代码。 Const m = 12: Const n = 6 Dim a(1 To m * n) As Integer Private Sub Form_Load() 生成 m*n 个数据,并显示在列表框 List1 ,代码略 End Sub Private Sub Com

37、mand1_Click() Dim i As Integer,j As Integer,k As Integer,temp As Integer Dim length As integer,begin As Integer ,sum As Integer Dim ks As String,js As String Dim xy(1 to 4) As Integer , hsum(1 to m*n) As Integer 读取文本框 Text1 的数值分别存储到数组 xy(1)、xy(2), 读取文本框 Text2 的数值分 别存储到数组 xy(3)、xy(4),xy(1)、xy(3)表示所在行

38、,xy(2)、xy(4)表示所在列,代码略 For i = 1 To xy(3) - xy(1) + 1 hsum(i) = 0 Next i 求限定区域内每行数据之和 For i = 1 To xy(3) - xy(1) + 1 For j = 1 To_ hsum(i) = hsum(i) + a(xy(1) + i - 2) * n + xy(2) + j - 1) Next j Next i 找出最大连续之矩阵和 temp = 0: sum = 0: length = 0: begin = 0 For i = 1 To xy(3) - xy(1) + 1 If temp + hsum(

39、i) sum Then sum = temp + hsum(i) length = i - begin k = i ElseIf temp + hsum(i) = sum And_ Then length = i - begin k = i End If If temp + hsum(i) length Str(k - length + xy(1) 【解析】 【详解】 本题考查 VB 综合能力。 (1)在设计程序界面时,要清空文本框中的显示内容,应修改 文本框的 text 属性。 (2)xy(1)、xy(3)表示所在行,xy(2)、xy(4)表示所在列,内循 环表示限定区域有多少列,故填入 x

40、y(4) - xy(2) + 1。 (3)根据题干若累加和等于 之前的最大和,但元素个数大于之前的最大和的元素个数,则记录此连续子矩阵的结 束位置,填入 i-begin length。 (4)开始位置表示为 Str(k - length + xy(1)。 11使用 Python 自身提供的 IDLE 集成开发环境录入以下代码及调试 运行,检测结果。 # 鸡兔同笼 for x in range(1,23): y=35-x if 4*x+2*y=94: print(兔子有%s 只,鸡有%s 只%(x,y) 特别提示:代码录入完毕,调试运行,检测错误,讨论错误原因,上网查找错误格式 的处置办法,直至

41、能正确输出结果。 【答案】错误 1:兔子 4 只腿,最多只能是 23 只,而 range(1,23)只取到 22,没取到 23,故应改为: range(1,24) 错误 2:缩进错误,y=35-x、if 4*x+2*y=94:是 for 语句中的语句块,应缩进。print(兔 子有%s 只,鸡有%s 只%(x,y)是 if 语句中的语句块,应缩进。 【解析】 【详解】 本题考查的是 Python 调试。本题程序错误如下: 错误 1:兔子 4 只腿,最多只能是 23 只,而 range(1,23)只取到 22,没取到 23,故应 改为: range(1,24) 错误 2:缩进错误,y=35-x、

42、if 4*x+2*y=94:是 for 语句中的语句块,应缩进。print(兔 子有%s 只,鸡有%s 只%(x,y)是 if 语句中的语句块,应缩进。 调试完最终输出:兔子有 12 只,鸡有 23 只。 12请编写 Python 程序,实现如下功能需求: 1)程序运行后,给出文字提示:“请输入一个正整数:” 2)输入一个整数 n 按回车后,程序输出从 1-n 所有整数中既是 3 的倍数又是 5 的倍数 的数。 3)不要超过 5 行代码。 程序运行举例: 【答案】n=input(请输入一个正整数: ) n=int(n) For i in range(15,n+1,15) print(i) 【解

43、析】 【分析】 【详解】 本题考查的是 Python 循环语句。range 函数,第一个参数表示开始,第二个参数表示 停止,第三个参数表示步长。print 缺省的话默认是换行输出。 13某考试的多选题有“A、B、C、D、E”5 个答案选项。阅卷的评分标准为:“全 部选对的得 2 分,选对但不全的得 1 分,不选或有选错的得 0 分” 。阅卷算法描述如下: 例如,标准答案为“ABE” ,则对应得分表如下所示。 学生答案ABEABAEBEABEAC. 字符串1100111000100010100110000010000000110100. 十进制数 (x) 2524179168120. ans(x

44、)211111100 小温依据上述描述设计了“多选题阅卷”的 VB 程序,实现如下功能:在文本框 Text1 中输入标准答案(大写字母) ,先单击“初始化”按钮 Command1,在数组 ans 中 生成所有答案组合对应 的分值,然后单击“阅卷”按钮 Command2,从数 据 库中读取学生的答案并进行阅卷,在列表框 List1 中显示得分结果。程序运行界面如图 所示。 (1)若标准答案为“ACD” ,则数组元素 ans (18)的值为 (2)请在划线处填入合适的代码。 Dim ans(0 To 31) As Integer Private Sub Command1_Click() Dim b

45、(0 To 4) As Integer Dim s As String, c As String, sum As Integer, k As Integer 初始化数组 ans 和数组 b,各元素的初始值均为 0。代码略 s = Text1.Text:k = Len(s) For i = 1 To k c = Mid(s, i, 1) b(Asc(c) - 65) = 2 (69 - Asc(c) Next i For i = 0 To 4 If b(i) 0 Then ans(b(i) = 1 sum = End If Next i ans(sum) = 2 当标准答案含 3 个及以上选项时

46、,学生答案选其中 2 个选项可得 1 分 i = 0 Do While k = 3 And i = 4 For j = i + 1 To 4 If b(i) * b(j) 0 Then ans(b(i) + b(j) = 1 Next j i = i + 1 Loop 当标准答案含 4 个及以上选项时,学生答案选其中 3 个选项可得 1 分 i = 0 Do While k = 4 And i = 97 Then a(t) = a(t) + 1 sum(t) = sum(t) + sScore(i) Next i For i = 1 To nc ave(c(i) = Int(sum(c(i)

47、/ b(c(i) * 100 + 05) / 100 Next i For i = 1 To nc - 1 For j = nc To i + 1 Step -1 If Then t = c(j): c(j) = c(j - 1): c(j - 1) = t End If Next j Next i For i = 1 To nc List2.AddItem Str(c(i) + + Str(b(c(i) + + Str(a(c(i) + + Str(ave(c(i) Next i End Sub Private Sub Form_Load() 链接数据库,代码略 recCount = 0 D

48、o While Not rsEOF recCount = recCount + 1 sClass(recCount) = rs.Fields(class) sName(recCount) = rs.Fields(name) sScore(recCount) = rs.Fields(score) rs.MoveNext Loop 将数据显示在列表框 List1 中,代码略 End Sub 【答案】 (1) score (2)t = sClass (i) c(nc)= t 或其他相同答案 ave(c(j) ) ave(c(j -1) ) 【解析】 【分析】 【详解】 本题考查 VB 综合能力,VB

49、 连接数据库等(1)根据 sScore(recCount)=rs.Fields(score) 这条代码可知,学生成绩存储在数据表中,其字段名是 score。 (2)代码第一空,联系 上下代码,可知此处关于 t 的赋值,t 代表班级,故 t=sClass(i)是该空答案。 (3)代 码第二空是 c 数组赋值,c 数组中存放的是按顺寻访问到的是第几个班级,故 c(nc)=t 是该空答案。 (4)第三空是冒泡排序内循环,根据平均分降序排序,故填入 ave(c(j) ave(c(j-1)。 三、填空题 15以下流程图描述的算法,执行结果是_。 【答案】# 【解析】 【分析】 【详解】 本题考查的知识点

50、是程序的识读。 初始值 t=0,n=1,执行输出“”语句,再执行判断 n2 表达式,不符合该条 件表达式,故执行输出“#” ,再执行 n=n+1 语句,即 n=2,再执行判断 t=1 表达式, 不符合该条件表达式,故执行判断 n2 表达式,不符合该条件表达式,故执行输出 “#” ,再执行 n=n+1 语句,即 n=3,再执行判断 t=1 表达式,不符合该条件表达式, 故执行判断 n2 表达式,符合该条件表达式,故执行输出“” , 再执行 t=1 语句, 再执行 n=n+1 语句,即 n=4;再执行判断 t=1 表达式,符合该条件表达式,故程序结束。 所以流程图的执行结果为:#。 故答案为#。

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|