搜索
    上传资料 赚现金
    4.5排序同步练习人教版信息技术选修1
    立即下载
    加入资料篮
    4.5排序同步练习人教版信息技术选修101
    4.5排序同步练习人教版信息技术选修102
    4.5排序同步练习人教版信息技术选修103
    还剩8页未读, 继续阅读
    下载需要5学贝
    使用下载券免费下载
    加入资料篮
    立即下载

    4.5排序同步练习人教版信息技术选修1

    展开
    这是一份高中信息技术中图版 (2019)必修2 信息系统与社会本册综合课时练习,共11页。试卷主要包含了选择题,填空题,操作题等内容,欢迎下载使用。


    一、选择题
    1.有如下 VB 程序段:
    cunt = 0: n = 7: i = 1 D While i <= n
    If a(i) > a(i + 1) Then
    cunt = cunt + 1
    t = a(i): a(i) = a(i + 1): a(i + 1) = t
    End If
    If i = n Then
    i = 0: n = n - 1
    i = i + 1
    Lp
    Text1.Text = Str(cunt)
    数组元素 a(1)~a(8)的值依次是“15,2,1,17,19,14,25,26”,执行该程序段后,文本框 Text1 中显示的是( )
    A.4B.5C.6D.7
    2.利用冒泡排序给数组[15,78,88,23,69,71,20,53]升序排序,第三遍冒泡加工之后的数据结果是( )
    A.[15,20,23,78,88,69,71,53]B.[15,20,23,53,78,88,69,71]
    C.[15,78,23,69,71,20,53,88]D.[15,23,69,71,20,53,78,88]
    3.有如下VB程序段:
    Fr i=1 T n-1 Step 2
    Fr j=1T((n+1)\2)*2-i-2 Step 2
    If a(j)>a(j+2)Then
    t=a(j):a(j)=a(j+2):a(j+2)=t
    End If
    Next j
    Fr j= ①
    If a(j)>a(j-2)Then
    t=a(j):a(j)=a(j-2):a(j-2)=t
    End If
    Next j
    Next i
    执行该程序段后,实现了对数组元素a(1)~a(n)中的奇数位置从小到大排序,偶数位置从大到小排序。则代码中①处的语句可为( )
    A.(n\2)*2 T i+1 Step-2B.(n\2)*2 T i+3 Step-2
    C.i+1 T(n\2)*2 Step2D.i+1 T (n\2)*2-2 Step2
    4.采用选择排序算法对数据序列“10,7,12,5,6,3”进行排序,第一轮排序后的结果为“12,7,10,5,6,3”,则整个序列完成排序的比较次数和交换次数分别是( )
    A.15,6B.11,5C.15,3D.11,4
    5.一个序列经过一趟冒泡排序后的结果是:10,21,13,24,28,则原始序列不可能是( )
    A.21,13,24,28,10B.21,10,24,28,13C.21,10,24,13,28D.21,24,13,28,10
    6.某数据序列为“18,7,15,33,42,29,63,81”,采用选择排序算法将数据从小到大排序,那么排序过程中需要交换元素的次数是( )
    A.6B.5C.4D.3
    7.某排序算法的 VB 程序段如下:
    n = 8: f = 1: c = 0
    Fr i = 1 T n \ 2 - 1
    Fr j = 1 T n - 2 * i
    If f * a(j) < f * a(j + 2) Then
    t = a(j): a(j) = a(j + 2): a(j + 2) = t
    c = c + 1
    End If
    f = -f
    Next j
    Next i
    数组元素 a(1)到 a(8)的初始值依次为:“16,31,42,38,35,29,27,15”,执行该程序段后,变量 C的值为( )
    A.6B.7C.8D.9
    8.现有三个整数序列:“1,2,3,4,5”“7,1,6,8,3”“9,8,7,6,5”。用选择排序算法分别对三个序列进行升序排序,比较次数依次为x、y、z,则下列关系正确的是( )
    A.x=y=zB.x>y>zC.y>z>xD.z>y>x
    9.采用选择排序算法对数据序列“12,23,24,15,11,10”完成升序排序,则需要交换的次数为( )
    A.3 次B.4 次C.5次D.6 次
    10.假定一组记录为(46,79,56,64,38,40,84,43),在冒泡排序的过程中,进行第一趟排序结束时,元素40不可能在哪个元素之后( )
    A.38B.46C.56D.64
    二、填空题
    11.n个数据的冒泡排序需要经过n-1遍加工,每一遍加工自下而上比较相信两个数据,把较小者交换到上面。小刘发现:当某一遍加工过程中没有数据交换,说明数据已经有序,无需进一步加工。为此,小刘对算法进行优化,编写了一个VB程序,功能如下:运行程序时,在列表框List1中显示排序前数据,单击“排序”按钮Cmmaiid1,在列表框List2 中显示这些数据按升序排序后的结果,在标签Label3中显示排序过程的加工遍数。运行效果如下图所示,
    实现上述功能的VB代码如下:
    Dim a(1 T 8) As Integer
    Dim n As Integer
    Private Sub Frm_Lad()
    'n=8,排序前数据存储在数组a中,并在列表框Listl中显示
    '代码略
    End Sub
    Private Sub Cmmand1_Click()
    Dim flag As Blean
    i = 1
    flag = True
    D While '改错
    flag = False
    Fr j = n T i + 1 Step -1
    If a(j) < a(j - 1) Then
    k = a(j): a(j) = a(j - 1): a(j - 1) = k
    flag = True
    End If
    Next j
    i = i + 1
    Lp
    Label3.Captin = "排序过程的加工遍数为" + '填空
    Fr i = 1 T n
    List2.AddItem Str(a(i))
    Next i
    End Sub
    (1)代码“Private Sub Cmmand1_Click()”中的Click是___________。(单选,填字母:A.对象名/B.属性名/C.事件名)
    (2)程序代码中,D While语句加框处有错,请改正。__________________
    (3)程序代码中,将Label3.Captin赋值语句补充完整。_________________
    (4)程序代码中,flag值为___________表示某一遍加工中发生过交换。
    12.某书城五种畅销图书的市场价格(单位:元)存放在数组d中,如下表所示。现对这些数据进行升序排列,若采用冒泡排序算法自下而上进行比较和交换,那么在第一遍加工后,d[2]的值是______ 。
    13.下列VB程序的功能是:程序运行时,单击命令按钮Cmmandl后,产生10个[1,999]范围内互不相同的随机整数,依次显示在列表框List1中,然后将它们按从小到大的顺序排序,排序结果显示在列表框List2中。数组a用于存储产生的10个随机整数,函数f(x)用于判断随机整数x与已生成的整数是否有重复,若有重复则返回True,否则返回False。
    (1)虚线框内程序段所采用的排序算法名称是 。(填:冒泡排序/选择排序)
    (2)在程序(1)和(2)划线处,填入适当的语句或表达式,把程序补充完整。
    Dim a(1 T 10) As Integer
    Functin f(x As Integer) As Blean ′代码略
    End Functin
    Private Sub Cmmandl_Click()
    Dim n As Integer ′n用于统计已经产生的随机整数个数
    Dim i As Integer.j As Integer
    Dim x As Integer.k As Integer
    Randmize ′初始化Rnd函数
    n=0
    List1.Clear ′清除列表框中内容
    List2.Clear
    D While n<10
    x=Int(Rnd*999)+1 ′产生[1,999]范围内的随机整数
    If Nt f(x) Then
    n=n+1
    a(n)="x"
    List1.AddItem Str( (1) )
    End If
    Lp
    Fr i="1" T 9 ′进行排序
    Fr j="10" T i+1 (2)
    If a(j)k=a(j):a(j)=a(j-1):a(j-1)=k
    End If
    Next j
    Next i
    Fr i="1" T 10
    List2.AddItem Str(a(i))
    Next i
    End Sub
    14.将6名选手的歌唱比赛成绩存放在数组a中,如下表所示:
    若按升序排列,采用冒泡排序算法自右向左进行比较和交换,第二轮排序之后a(4)中的值为________
    15.为了合理有效的共享学校图书馆自修室资源,学校实行自修室座位网上预约,学生
    按学号登录系统进行预约(学号编码为六位数字,第一二位代表年级,第三四位代表班级,第五 六位代表顺序号。如 030102 表示高三 1 班 2 号同学)。为了方便老师管理,预约结束由电脑进行 排位。排位规则如下:
    ①年级优先原则,先高三再高二最后高一
    ②班号优先原则,同年级的班号小的排前面
    ③序号优先原则,同班级同学序号小的排前面 小张根据以上要求编写了 VB 程序,程序界面如下图所示:
    实现上述功能的 VB 程序代码如下,请回答下列问题:
    ⑴分析程序,可知调用的数据库的名称为____________________________________。
    ⑵请在划线处填入合适的代码。
    Dim a(200) As String
    Cnst num = 200
    Dim temp As String
    Private Sub Frm_Lad() ‘此处代码实现将预约信息存储到数组 a(i)中
    Dim cn As New ADODB.Cnnectin
    Dim rs As New ADODB.Recrdset
    cn.Open "prvider=.12.0;data surce=" & App.Path & "\" &"stu.accdb"
    rs.Open "select * frm student"
    i = 1
    D While Nt rs.EOF
    a(i) = rs("xueha")
    rs.MveNext
    ①____________
    Lp
    rs.Clse
    cn.Clse
    List1.AddItem "预约号" & " " & "学号"
    Fr i = 1 T num
    List1.AddItem Str(i) & " " & a(i)
    Next i
    End Sub
    Private Sub Cmmand1_Click()
    Fr i = 1 T num - 1
    Fr j = num T i + 1 Step -1
    If ②____________ Then
    temp = a(j) a(j) = a(j - 1) a(j - 1) = temp
    End If
    Next j
    Next i
    List2.Clear
    List2.AddItem "座位" & " " & "学号"
    Fr i = 1 T num
    List1.AddItem Str(i) & " " & a(i)
    Next i
    End Sub
    Functin check(x As String, y As String) As Blean
    Dim x1 As Integer, x2 As Integer, x3 As Integer
    Dim y1 As Integer, y2 As Integer, y3 As Integer
    x1 = Val(Mid(x, 1, 2)) : x2 = Val(Mid(x, 3, 2)) : x3 = Val(Mid(x, 5, 2))
    y1 = Val(Mid(y, 1, 2)) : y2 = Val(Mid(y, 3, 2)) : y3 = Val(Mid(y, 5, 2))
    If x1 < y1 Or x1 = y1 And x2 > y2 Or ③__________ Then
    check = True
    Else
    check = False
    End If
    End Functin
    三、操作题
    16.根据申请人的QA和QB值,从m个申请人中挑选2人组队参加某挑战赛。条件一是2人的QA值都必须大于指定参数h;条件二是2人的QA值之差(较大值减较小值)小于h。在满足上述两个条件的所有2人组合中,挑选QB值之和最大的一个组合。(QA、QB和h的值均为正整数)
    编写VB程序,实现上述挑选功能。运行程序,在文本框Text1中输入参数h后,单击“挑选”按钮Cmmand1,在列表框List1中按QA值降序显示满足条件一的申请人信息,最后在标签Label1中显示组队结果。程序运行界面如图所示。
    请回答下列问题:
    (1)若要清空列表框List1,能实现该功能的语句是_________(单选,填字母:A.List1. Captin = "" / B.List1.Text = "" / C.List1. Clear)。
    (2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
    (3)程序中加框处代码有错,请改正。
    Cnst m = 20 ’m表示申请人个数
    Dim id(m)As Integer,qa(m)As Integer,qb(m)As Integer
    Private Sub Cmmand1_Click()
    Dim i As Integer j As Integer,k As Integer,t As Integer,max As Integer
    Dim h As Integer,n As Integer ’变量n存储满足条件一的申请人个数
    Dim s As String
    ’读取全部申请人的编号、QA和QB值,分别存入数组id、qa和qb,代码略
    h = Val(Text1. Text):n = m
    Fr i = 1 T m — 1
    k = i
    Fr j = i + 1 T m
    If qa(j)> qa(k)Then k = j
    Next j
    If Then
    If k <> i Then
    t = qa(i):qa(i) = qa(k):qa(k) = t
    t = qb(i):qb(i) = qb(k):qb(k) = t
    t = id(i):id(i) = id(k):id(k) = t
    End If
    Else
    n = ①
    Exit Fr ’Exit Fr表示退出循环
    End If
    Next i
    ’满足条件一的申请人信息显示在列表框Listl中,代码略
    max = 0:s = “没有满足条件的组合”
    ’在满足条件的组合中,寻找QB值之和最大的组合,若有并列,只保留第一个
    Fr i = n T 2 Step — 1
    j = i — 1
    D While ②
    If qb(i)+ qb(j) > max Then
    s = "组队结果:" + Str(id(i)) + "号," + Str(id(j)) + "号"
    ___③
    End If
    j = j — 1
    Lp
    Next i
    Label1. Captin = s
    End Sub
    d[1]
    26
    d[2]
    32
    d[3]
    20
    d[4]
    29
    d[5]
    36
    参考答案:
    1.C
    2.B
    3.B
    4.C
    5.D
    6.C
    7.C
    8.A
    9.A
    10.C
    11. C i<=n-1 and flag=true Str(i-1) true
    12.26
    13.(1)冒泡排序 (2)a(n) Step-1
    14.82
    15. stu.accdb i=i+1 check(a(j - 1), a(j)) x1 = y1 And x2 = y2 And x3 > y3
    16.(1)C
    (2)①i — 1
    ②j > = 1 And qa(j)- qa(i) < h
    或j > 0 And Abs(qa(i)-qa(j)) < h 或等价表达式
    ③max = qb(i) + qb(j)
    (3)qa(k) > h
    相关试卷

    4.6趣味应用同步练习人教版信息技术选修1: 这是一份信息技术中图版 (2019)本册综合复习练习题,共7页。试卷主要包含了选择题,操作题等内容,欢迎下载使用。

    4.4查找同步练习人教版信息技术选修1: 这是一份高中信息技术中图版 (2019)必修2 信息系统与社会本册综合随堂练习题,共11页。试卷主要包含了选择题,填空题,操作题等内容,欢迎下载使用。

    2.4调试程序同步练习人教版信息技术选修1: 这是一份高中中图版 (2019)本册综合复习练习题,共11页。试卷主要包含了选择题,填空题,操作题等内容,欢迎下载使用。

    免费资料下载额度不足,请先充值

    每充值一元即可获得5份免费资料下载额度

    今日免费资料下载份数已用完,请明天再来。

    充值学贝或者加入云校通,全网资料任意下。

    提示

    您所在的“深圳市第一中学”云校通为试用账号,试用账号每位老师每日最多可下载 10 份资料 (今日还可下载 0 份),请取消部分资料后重试或选择从个人账户扣费下载。

    您所在的“深深圳市第一中学”云校通为试用账号,试用账号每位老师每日最多可下载10份资料,您的当日额度已用完,请明天再来,或选择从个人账户扣费下载。

    您所在的“深圳市第一中学”云校通余额已不足,请提醒校管理员续费或选择从个人账户扣费下载。

    重新选择
    明天再来
    个人账户下载
    下载确认
    您当前为教习网VIP用户,下载已享8.5折优惠
    您当前为云校通用户,下载免费
    下载需要:
    本次下载:免费
    账户余额:0 学贝
    首次下载后60天内可免费重复下载
    立即下载
    即将下载:0份资料
    • 充值学贝下载 90%的用户选择 本单免费
    • 扫码直接下载
    选择教习网的 4 个理由
    • 更专业

      地区版本全覆盖, 同步最新教材, 公开课⾸选;1200+名校合作, 5600+⼀线名师供稿

    • 更丰富

      涵盖课件/教案/试卷/素材等各种教学资源;500万+优选资源 ⽇更新5000+

    • 更便捷

      课件/教案/试卷配套, 打包下载;手机/电脑随时随地浏览;⽆⽔印, 下载即可⽤

    • 真低价

      超⾼性价⽐, 让优质资源普惠更多师⽣

    开票申请 联系客服
    本次下载需要:0学贝 0学贝 账户剩余:0学贝
    本次下载需要:0学贝 原价:0学贝 账户剩余:0学贝
    了解VIP特权
    您当前为VIP用户,已享全站下载85折优惠,充值学贝可获10%赠送

        扫码支付后直接下载

        0元

        扫码支付后直接下载

        使用学贝下载资料比扫码直接下载优惠50%
        充值学贝下载,本次下载免费
        了解VIP特权
        • 微信
        • 支付宝

        微信扫码支付

        支付宝扫码支付(支持花呗)

        到账0学贝
        • 微信
        • 支付宝

        微信扫码支付

        支付宝扫码支付 (支持花呗)

          下载成功

          Ctrl + Shift + J 查看文件保存位置

          若下载不成功,可重新下载,或查看 资料下载帮助

          本资源来自成套资源

          更多精品资料

          正在打包资料,请稍候…

          预计需要约10秒钟,请勿关闭页面

          服务器繁忙,打包失败

          请联系右侧的在线客服解决

          单次下载文件已超2GB,请分批下载

          请单份下载或分批下载

          支付后60天内可免费重复下载

          我知道了
          正在提交订单

          欢迎来到教习网

          • 900万优选资源,让备课更轻松
          • 600万优选试题,支持自由组卷
          • 高质量可编辑,日均更新2000+
          • 百万教师选择,专业更值得信赖
          微信扫码注册
          qrcode
          二维码已过期
          刷新

          微信扫码,快速注册

          还可免费领教师专享福利「樊登读书VIP」

          手机号注册
          手机号码

          手机号格式错误

          手机验证码 获取验证码

          手机验证码已经成功发送,5分钟内有效

          设置密码

          6-20个字符,数字、字母或符号

          注册即视为同意教习网「注册协议」「隐私条款」
          QQ注册
          手机号注册
          微信注册

          注册成功

          下载确认

          下载需要:0 张下载券

          账户可用:0 张下载券

          立即下载

          如何免费获得下载券?

          加入教习网教师福利群,群内会不定期免费赠送下载券及各种教学资源, 立即入群

          返回
          顶部