组卷网 > 高中信息技术综合库 > 算法软件操作 > VB程序的调试
题型:操作题 难度:0.65 引用次数:28 题号:12340847
图图基于排序算法设计了一个数字矩阵排序的 VB 程序,功能如下:在文本框 Text1 中输入矩阵的大小 n,单击“生成”按钮 Command1,在左侧列表框 List1 中显示行数和列 数均为 n 的随机整数矩阵。单击“排序”按钮 Command2,奇数行从左到右升序排序, 偶数行从左到右降序排序,结果显示在列表框 List2 中,输出时保持矩阵大小不变。运 行结果如图所示。

请回答下列问题:
1)实现上述功能的 VB 程序如下,请在划线处填入合适的代码。
Dim a(1 To 100) As Integer
Dim n As Integer
Private Sub Command1_Click()
Dim i As Integer, j As Integer
Dim s As String, k As Integer
n = Val(Text1Text)
For i = 1 To n
       _____
       For j = 1 To n
             k = (i - 1) * n + j
             a(k) = Int(Rnd() * 45 + 5) * 2
             s = s + + Str(a(k))
       Next j
       List1AddItem s
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, L As Integer, R As Integer
Dim f As Integer
For i = 1 To n
If i Mod 2 = 1 Then
       f = 1
Else
       f = -1
       ____
       R = i * n
       List2AddItem sort(L, R, f)
Next i
End Sub
Function sort(left As Integer, right As Integer, order As Integer) As String
Dim i As Integer, j As Integer, k As Integer
Dim s As String, t As Integer s = “”
For i = left To right - 1 k = i
       For j = i + 1 To right
             If______Then
                    k = j
       Next j
       If k <> i Then
             t = a(k): a(k) = a(i): a(i) = t
       End If
       s = s + + Str(a(i))
Next i

sort = s
End Function
2)若删除上述 VB 程序中加框处代码,_______(选填:会/不会)影响程序运行结果。
【知识点】 VB程序的调试

相似题推荐

操作题 | 适中 (0.65)
【推荐1】在 VB 的算术运算中,最大的实数类型 double 有效位数也只有 15 位。为了实现除法运算保留任意位数,小明根据除法原理,编写了如下程序,功能如下:在文本框 Text1 中输入被除数(正整数) ,在文本框 Text2 中输入除数(正整数),在文本框 Text3 中输入小数位数,单击按钮 Command1,在标签 Label 中显示除法运算的商。程序运行界面如图所示,但加框处代码有错,请改正:

Private Sub Command1_Click
Dim x, y As Integer
Dim n As Integer
Dim s As String
x = Val(Text1.Text): y = Val(Text2.Text)
n = Val(Text3.Text)
s = s+Str(x \ y)
s = s+"."
k = x Mod y
For i = 1 To n
x = x+k*10 ①______
s = Str(x \ y) ②_____

k = x Mod y
Next i
Label1.Caption = "商为: " + s
End Sub
2019-02-28更新 | 28次组卷
操作题 | 适中 (0.65)
真题
【推荐2】某地1900-1999年的平均降水量数据保存在数据库中。现要求找出相邻两年年平均降水量变化(即本年度与上年度“年平均降水量”差值的绝对值)最大的年份区间。如果多个符合要求的年份区间,只输入距今最近的。小吴为此编写了VB程序,程序运行时,单击按钮Command1后,在文本框Text1中输出运行结果。实现上述功能的VB代码如下,但加框处代码有错,请改正。
Dim w(1 To 100) As Single        '依次存储1900-1999年的年平均降水量数据
Const n = 100
Private Sub Form_Load()
'本过程从数据库中按19000-1999年依次读取年平均降水量数据,并存储在数组w中
'代码略
End Sub
Private Sub Command1_Click()

Dim i As Integer, imax As Integer

imax = _______________

For i = 3 To n

If Abs(w(i) - w(i - 1)) >= Then imax = i     ____________

Next i

Text1.Text = "年平均降水量变化最大的年份区间是" + Str(imax + 1889) + "-" + Str(imax + 1899)

End Sub
2019-11-17更新 | 72次组卷
操作题 | 适中 (0.65)
【推荐3】编写“二进制加法”程序。程序运行时,在文本框 Text1 和文本框 Text2 分别输入两个二进制数,单击按钮 Command1 后在文本框 Text3 上输出两个二进制相加后的结果。程序运行如图所示。

(1)观察代码,触发代码执行的事件名是____________
(2)为实现上述功能,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim b1 As String, b2 As String, ans As String, t As String
Dim dist As Integer, jw As Integer
b1 = Text1.Text: b2 = Text2.Text : ans=""

__________________________

If dist < 0 Then

t = b1: b1 = b2: b2 = t: dist = -dist

End If

For i = 1 To dist

b2 = "0" + b2

Next i

jw = 0

For i = Len(b1) To 1 Step -1

x = Val(Mid(b1, i, 1)) + Val(Mid(b2, i, 1)) + jw

__________________________

ans = Str(x Mod 2) + ans

Next i

If ___________________   then ans="1"+ans

Text3.Text = ans


End Sub
2019-04-25更新 | 51次组卷
共计 平均难度:一般