试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:困难

浙江省温州市十校联合体2017届高三上学期期末考试技术试题(信息技术部分)

编写VB程序,实现如下功能:在文本框Text1中输入整数n(1≤n≤10),单击“生成矩阵”按钮Command1,生成n2个10到99之间(包含10和99)的随机整数,并以n行、n列矩阵的形式显示在列表框List1中,再单击“对角线”按钮Command2,则在标签Label1中输出该矩阵对角线(左上角到右下角)上的数值,运行界面如图所示,程序代码如下。
(1)、要使文本框Text1上显示的默认文本由“8”改为“10”,可在其属性窗口中将属性的属性值改为“10”。

(2)、为了实现上述功能,请在划线处填入合适的代码。

Const MAXNUM = 100

Dim i As Integer, n As Integer

Dim a(1 To MAXNUM ^ 2) As Integer

Private Sub Command1_Click()

  Dim line As String

  n = Val(Text1.Text)

  line = ""

List1.Clear

  Randomize

  For i = 1  To  n ^ 2

    a(i) =            ①         

    If i > 1 And i Mod n = 1 Then

       List1.AddItem line

       line = Str(a(i))

    Else

       line =        ②         

    End If

  Next i

  List1.AddItem line

End Sub

Private Sub Command2_Click()

  Label1.Caption = ""

For i = 1  to     ③    

     Label1.Caption = Label1.Caption & Str(a(i + (i - 1) * n))

  Next i

End Sub

 ② ③ 

举一反三
用VB编写一个字符串分行程序,功能如下:单击“分行”按钮Command1将文本框Text1中的英文文本在列表框List1中分行显示(分行时单词不得跨行,每行字符尽可能多但不超过40个)并在标签Label1中输出总行数,运行效果如图所示。分行算法如下:

⑴将文本框中的字符串保存到变量s中;

⑵当s中字符个数超过40时,循环执行下列①、②、③步,否则跳转到(3):

①如果第41个字符不是英文字母,则分行位置p = 40;否则,向左逐个查找,直至找到第一个非英文字母,将其位置作为分行位置p;

②截取s的前p个字符,作为新增行显示在列表框List1中,同时总行数加1 ;

③将s中未分行部分重新赋值给变量s。

⑶将s作为新增行显示在列表框List1中,同时总行数加1。

实现上述功能的VB程序如下,请在划线处填入合适代码。

Private Sub Commandl_Click()

Dim s As String,c As String

Dim r As Integer, total As Integer,p As Integer

total = 0

s ={#blank#}1{#/blank#}

Do While Len(s) > 40

r = 41

c = Mid(s,r,1)

If  Not((c>= "a"And c<="z" ) Or (c>="A"Andc<="Z")) Then

p = 40

Else

’从第41个字符幵始向左找到第1个非英文字母,并将其位置值赋给p

     Do While (c >= "a" And c <= "z") Or (c >= "A"  

                 And c <= "Z")

r ={#blank#}2{#/blank#}

c = Mid(s,r,1)

Loop

p = r

End If

List1. Addltem  Mid(s,1,p)

total = total + 1

s ={#blank#}3{#/blank#}

Loop

List1. AddItem  s

total = total + 1

Labell. Caption ="共"+ Str(total) + "行"

End Sub

返回首页

试题篮