VB程序改错40题
- 格式:doc
- 大小:94.00 KB
- 文档页数:10
第52题(1.0分)题号:450
'------------------------------------------------
'【程序改错】
'------------------------------------------------
'题目:统计一顺序文件text.txt中的空格、字母、数字和其它字符个数。
'------------------------------------------------
Option Explicit
Private Sub Command1_Click()
Dim s As String, C As String
Dim I As Integer, L As Integer, spac As Integer, character As Integer, digit As Integer, other As Integer
'**********FOUND**********
Open App.Path & "\text.txt" For Output As #1
'**********FOUND**********
Do Until EOF(0)
Line Input #1, s
L = Len(s)
For I = 1 To L
C = Mid(s, I, 1)
If C >= "a" And C <= "z" Or C >= "A" And C <= "Z" Then
character = character + 1
ElseIf C = " " Then
spac = spac + 1
'**********FOUND**********
ElseIf C >= "0" And C < "9" Then
digit = digit + 1
Else
other = other + 1
End If
Next I
Loop
Close #1
Print "字符个数为:"; character; "数字个数为:"; digit
Print "空格个数为:"; spac; "其它个数为:"; other End Sub
答案:
=======(答案1)=======
Open App.Path & "\text.txt" For Input As #1
=========或=========
Open "text.txt" For Input As #1
=======(答案2)=======
Do Until EOF(1)
=========或=========
Do While Not EOF(1)
=======(答案3)=======
ElseIf C >= "0" And C <= "9" Then
第57题(1.0分)题号:465
'------------------------------------------------ '【程序改错】
'------------------------------------------------
'题目:用InputBox函数输入一个字符串,编写程序按与' 输入的字符相反的次序用Msgbox函数输出这个字' 符串。如输入字符串为"abcdefgh",则输出为"h ' gfedcba",输出效果如图1。
'------------------------------------------------ Option Explicit
Private Sub Command1_Click()
Dim pristr As String, outstr As String
Dim i As Integer
pristr = InputBox("please input a string")
'**********FOUND**********
For i = 0 To Len(pristr)
'**********FOUND**********
outstr = outstr + Mid(pristr, Len(pristr) - i) Next i
'**********FOUND**********
MsgBox outstr, , "The Output Result "
End Sub
答案:
=======(答案1)=======
For i = 0 To Len(pristr) - 1
=========或=========
For i = 0 To -1+Len(pristr)
=======(答案2)=======
outstr = outstr + Mid(pristr, Len(pristr) - i, 1)
=========或=========
outstr = Mid(pristr, Len(pristr) - i, 1)+outstr
=======(答案3)=======
MsgBox outstr, vbQuestion, "The Output Result "
第59题(1.0分)题号:147
'------------------------------------------------
'【程序改错】
'------------------------------------------------
'题目:下面的程序用来产生并输出图示的杨辉三角。
' 1
' 1 1
' 1 2 1
' 1 3 3 1
' 1 4 6 4 1
' 1 5 10 10 5 1
'------------------------------------------------ Option Explicit Public Sub readin(a() As Integer, n As Integer) Dim i, j As Integer
For i = 1 To n
'**********FOUND**********
a(i, n) = 1
a(i, 1) = 1
Next i
For i = 3 To n
'**********FOUND**********
For j = 2 To n
a(i, j) = a(i - 1, j) + a(i - 1, j - 1) Next j
Next i
End Sub
Public Sub printf(a() As Integer, n As Integer) Dim i, j As Integer
For i = 1 To n
'**********FOUND**********
For j = 1 To n
Print Tab(5 * j + 10); a(i, j);
Next j
Next i
End Sub
Private Sub Form_Click()
Dim x(10, 10) As Integer
Call readin(x(), 6)
Call printf(x(), 6)
End Sub
答案: