试题

试题 试卷

logo

题型:单选题 题类:常考题 难易度:普通

浙江省温州十五校联合体2019-2020学年高一下学期信息技术期中考试试卷

下列 VB 表达式中的值为 5 的是(  )
A、Int(Sqr(9) + 1.3) B、(19 \ 2) Mod 5 C、Abs(-5) + Sqr(4) D、Len("x+y+2")
举一反三
【加试题】猜数字游戏。由用户选择需要猜测的数字长度后,电脑随机产生一串相应长度的数字,用户输入猜测的数字,电脑判断用户所猜密码的正确性,如果用户输入的数字和电脑产生的密码完全一致则输出“恭喜你猜中了!”,否则程序将输出用户和计算机产生数字之间不同的字符数。电脑产生的n位数字分别保存在数组num的n个下标变量num (1)、num (2)、…、num (n)中。
    程序界面如图VB-1所示,用户在文本框Text1中输入数字长度,单击“确定长度”按钮(Command1)后,在文本框Text2中输入数字,单击“判定”按钮(Command2)后,程序在标签Label3中输出校验结果。
相应的程序如下,在程序划线处,填入适当的语句或表达式,把程序补充完整。

Dim num(1 To 25) As Integer
Private Sub Command1_Click()
 Dim i As Integer,n As Integer
 n = Val(Text1.Text)
 For i = 1 To n                   '产生n位小于8的密码,每位一个非负整数,保存到数组num
  num(i) = {#blank#}1{#/blank#}
 Next i
End Sub
Private Sub Command2_Click()
Dim x(1 To 25) As Integer, i As Integer, s As Integer, n As Integer
 n = Val(Text1.Text)
 For i = 1 To n
     x(i) = {#blank#}2{#/blank#}    '把文本框中数字逐个分割出来并转化成数值
 Next i
 s = 0                               '变量s保存不同字符的总数
 For i = 1 To n
  If num(i) <> x(i) Then  s = s + 1
 Next i
 If {#blank#}3{#/blank#} Then
  Label3.Caption = "恭喜你猜中了!"
 Else
      Label3.Caption = "你输入的数字共有" + Str(s) + "个字符不符"
 End If
End Sub
从产品库里面的product数据表中读出产品信息(ID,类别,产品名,图片路径,格式5个字段)。已知product表中已经按ID排序,读出后的数据直接连接成字符串在List1中显示,现在希望能不改变原有列表顺序的情况下,在list2中显示按产品名排序的结果。一般的方法是按产品名建立索引(不存在重复的产品名)。基本思路如下:

⑴用一个数组product()来存放产品名。

⑵用另一个数组a()来存放产品名数据的下标(已经按产品名排序的)。

按产品名排序的方法是:取第一个产品名product(0),与后面所有的产品名比较一遍,如果有比第一个产品名大的,M+1,M用来计该产品名的位次。一轮结束后在a(M)元素记下第一个产品名的下标0。然后再取product(1)与其它所有产品名比较一遍,其余同第一个产品名。依次完成每一个产品名位次的计算并记录在a()数组中。

⑶最后按a()数组指定的位置取出list1中的项添加到list2中。

程序代码如下,请补充完整下面的空缺。

Dim products(100) As String  '存放产品名的数组

Dim num As Integer          '从数据库中读出的记录数

Private Sub Command1_Click()

Dim a(100) As Integer           '存放按产品名索引的产品数组下标

Dim i As Integer, j As Integer, m As Integer    'm比当前产品名大的产品名个数

For i = 0 To 100

    a(i) = 0

Next i

For i = 0 To num

   m = 0

   For j = {#blank#}1{#/blank#} 

     If i <> j And products(i) > products(j) Then m = m + 1

   Next j

   {#blank#}2{#/blank#} 

Next i

For i = 1 To num

 List2.AddItem  {#blank#}3{#/blank#}     '按a数组的索引从list1中取出项添加到list2

Next i

End Sub

Private Sub Form_Load()

Dim conn As New ADODB.Connection

Dim rs As New ADODB.Recordset

Dim s As String, i As Integer

conn.ConnectionString = "provider=microsoft.ace.oledB.12.0;data source=" & App.Path & "\产品库.accdb "

conn.Open

Set rs.ActiveConnection = conn

rs.Open "select * from product"

num = 0

Do While Not rs.EOF And num <= 100

    s = ""

    For i = 1 To 5

     products(num) = rs.Fields(2)           '读出当前记录的产品名保存到products数组

     s = s & rs.Fields(i - 1) & " ,"        '将一条记录的各字段内容连接成字符串

    Next i

    List1.AddItem s

    {#blank#}4{#/blank#}

    num = num + 1

 Loop

 num = num - 1

 rs.Close

 conn.Close

 Set rs = Nothing

 Set conn = Nothing

End Sub

返回首页

试题篮