试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:普通

浙江省名校协作体2020-2021学年高二下学期信息技术联考试卷

为庆祝新学期到来,某校学生会组织开展文体演艺活动,现按活动要求,将各班学生编排成“三角”队形。队形有以下要求:

第一排正中间安排1人;第二排正中间安排3人;第三排正中间安排5人……,如此循环,直至班级人数不足以站满一排后结束编排。

三角队形外围一圈的同学对服装有特殊要求,需要进行标记(中间的同学用“●”标记,外围的同学用“▲”标记)

编写VB程序,实现队形编排功能:在文本框Text l中输入班级人数,单击“展示队形”按钮Command1后,将班级学生队形显示在列表框List 1中。例如,当班级学生数为54的时候,程序运行界面如图所示。

(1)、根据题意,如果输入的班级人数为70,则三角队形的最后一行人数为
(2)、程序代码中加框处有错误,请改正。

Private Sub Command 1_Click( )

    Dim i As Integer,j As Integer

    Dim cnt As Integer,nAs Integer,tmp As Integer

    Dim kw As String,zw As String,c As String

    List 1.Clear

    cnt=Val(Text 1.Text)

    n=0:tmp= 1

    Do While     ‘计算三角队形的行数

        cnt=cnt-tmp

        tmp=tmp+ 2

        n=n+1

    Loop

    For i=1 T on

        kw="":zw=""

        For j=i T on-1

            kw=kw+" "

        Next j

        If i=n The nc="▲" Else c="●"

        For j= 1 To 2*(i-1)-1

            zw=zw+c

        Next j

        IfThen

            ZW="▲"

        Else

            zw="▲"+zw+"▲"

        End If

        List 1.Add Item

    Next i

End Sub

(3)、实现队形编排功能的VB程序如下,请在划线处填入合适的代码。
举一反三
给定区间[a1,a2]和[b1,b2],若a2≥b1,则认为这两个区间是有重叠的,可进行合并。如区间[1,3]和[2,6]可合并为[1,6];区间[1,6],[2,5]可合并为[1,6];区间[1,4]和[4,5]可合并为[1,5]。

编写一个“合并重叠区间”的VB程序,功能如下:在文本框Text1中按各区间起始值升序依次输入各区间的起始值和终止值(数据都用逗号分隔并以逗号结尾),单击“确定”按钮后,在Text2中显示合并后的各个区间。例如,在文本框Text1中输入“1,2,3,5,4,6,9,12,10,11,”,表示区间[1,2],[3,5],[4,6],[9,12],[10,11],合并后的区间分别为[1,2],[3,6],[9,12]。程序运行界面如图所示,实现上述功能的VB代码如下:

Const n=100

Private Sub Cmd1_Click()

    Dim i As Integer, k As Integer, L As Integer, R As Integer

    Dim s As String, c As String, t As String, result As String

    Dim a(1 To n) As Integer

    s=   ①   : t=" ": k=0

    For i=1 To Len(s)

        c=Mid(s, i, 1)

        If c<>"," Then

                 ②      

        Else

            k=k+1

            a(k)=Val(t)

            t=""

        End If

    Next i

    L=a(1): R=a(2)

    i=3

    Do While i<=k

        If a(i)>R Then

            result = result+"("+Str(L)+","+Str(R)+"),"

            L=a(i): R=a(i+1)

       

            R=a(i+1)

        End If

            ③   

    Loop

    result=result+"("+Str(L)+","+Str(R)+"),"

    Text2. Text=result

End Sub

返回首页

试题篮