试题

试题 试卷

logo

题型:单选题 题类:常考题 难易度:困难

浙江省十校联盟2020届高三上学期信息技术10月联考试卷

某同学设计了一个排序算法,先将数组a中奇数位置的元素、偶数位置的元素分别进行排序,然后再进行后续处理,直至所有元素按降序排列。算法的VB程序段如下:

待排序数据已存储在数组a中(a(1)~a(n))

For i= 1 To n-2

k= i

For j=    ‘①

If a(j)>a(k) Then k =j

Next j

If k<>i Then t= a(i): a(i)= a(k): a(k)=t

Next i

For i= 1 To n\ 2

j=2*i-1

If a(j)< a(j+ 1) Then t= a(): a()=a(j+ 1): a(j+1)=t

Next i

For i=  ‘②

t= a(i):j-i

Do While t> a(j)

a(j+1)=a():j=j

Loop

   ‘③

Next i

上述程序段中3处方框处的代码分别为(  )

A、①i+1 To n Step 2②2 To n Step 2③a(j+1)=t B、①i+2 To n Step 2②3 To n Step 2③a(j+1)=t C、①i+2 To n Step 2②2 To n Step 2③a(j)=t D、①i+1 To n Step 2②3 To n Step 2③a(j)=t
举一反三
小月设计了一个VB程序,用于对全班55名同学的体质调查分析,该程序能将55名同学的身高与体重录入到数据库中,之后通过如图所示的VB应用程序计算出这些同学的BMI指数,并按BMI指数从小到大进行排序,并显示这些学生的体质情况。

    注:BMI指数的计算公式为:BMI=体重(千克)除以身高(米)的平方(kg/m2)。 BMI<18.5为偏瘦(表明营养不足);BMI=18.5~24.9为体重正常;BMI=25~29.9为超重;BMI>30为肥胖。

该VB应用程序的代码如下:

Dim stuBMI(1 To 55) As Single

Dim stuName(1 To 55) As String

Private Sub Command1_Click()

    Dim k As Integer, i As Integer, j As Integer

    Dim t1 As Single, t2 As String

    Dim Results As String

    For i = 1 To 54        

        For j = i + 1 To 55

            If stuBMI(j) < stuBMI(k) then      ②    

        Next j

        If  k<>I  Then  

            t1 = stuBMI(i): stuBMI(i) = stuBMI(k): stuBMI(k) = t1

            t2 = stuName(i): stuName(i) = stuName(k): stuName(k) = t2

        End If

    Next i

List1.AddItem "姓名" + vbTab + "BMI指数" + vbTab + "结果"  

    For i = 1 To 55

        If stuBMI(i) < 18.5 Then

            Results = "偏瘦"

        ElseIf stuBMI(i) >= 18.5 And stuBMI(i) < 25 Then

            Results = "正常"

        ElseIf stuBMI(i) >= 25 And stuBMI(i) < 30 Then

            Results = "超重"

        Else

            Results = "肥胖"

        End If

        List1.AddItem stuName(i) + vbTab + str(stuBMI(i)) + vbTab + Results

    Next i

End Sub

Private Sub Form_load()

    Dim conn As New ADODB.Connection

    Dim rs As New ADODB.Recordset

    Dim strSQL As String

    Dim i As Integer

    conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + App.Path + "\Student.accdb"

    conn.Open

    strSQL = "SELECT * FROM Student"

    Set rs.ActiveConnection = conn

    rs.Open strSQL

    i = 0

    Do While Not rs.EOF

        i = i + 1

        stuName(i) = rs.Fields("StuName")

        stuBMI(i) = Round(rs.Fields("Weight") / rs.Fields("height") ^ 2, 1)

        rs.MoveNext

    Loop

    rs.Close

    conn.Close

    Set rs = Nothing

    Set conn = Nothing

End Sub

返回首页

试题篮