上机考试最全调试题及答案.doc
文本预览下载声明
第二部分 浙江省VB二级试题解
A.程序调试题
一、选择结构
程序调试01
Option Explicit
Public Sub getanswer()
该过程是用于计算一元二次方程的根,并将结果输出来。
Dim dalt!, a#, b#, c#
a = InputBox(输入系数a)
b = InputBox(输入系数b)
c = InputBox(输入系数c)
dalt = b * b - 4 * a * c
if ----1---- then
dalt = Sqr(dalt)
MsgBox Format((-b + dalt) / 2 / a), 0.00 + Chr(13) + Chr(10) + Format((-b - dalt) / 2 / a, 0.00)
elseif ---2---- then
MsgBox Format(-b / 2 / a, 0.00) + Chr(13) + Chr(10) + Format(-b / 2 / a, 0.00)
Else
dalt= ---3----
MsgBox Format((-b + dalt) / 2 / a, 0.00) + +i + Chr(13) + Chr(10) + Format((-b - dalt) / 2 / a, 0.00) + -i
End If
End Sub
二、单重循环
程序调试02
Option Explicit ‘这条语句要求在该模块中,使用变量前必须先声明。
Public Sub Uppersen()
该过程是将一个英文句子的每个单词的首字母都变成大写。
从键盘上任意输入一条英文句子,
将句子中的每个单词的首字母都变成大写
例如:输入I am a good student.
要求输出I Am A Good Student.
Dim oldsen As String, newsen As String
Dim char As String, lastchar As String
Dim k As Integer, i As Integer
oldsen = InputBox(请输入英文句子:)
k = -------1--------
以空格作为单词的界定,空格后的字母转换为大写字母
lastchar = ---------2--------
For i = 1 To k
char = ------3--------
If lastchar = Then
char = UCase(char)
End If
newsen = newsen char
lastchar = char
Next i
Form1.Print input:; oldsen
Form1.Print output:; newsen
End Sub
程序调试03
Public Sub JiSuan()
该过程用于计算1-(1/2)+(1/3)-...+(1/99)-(1/100)的值并打印出来。
Dim i As Integer
****** 错误1 *******
Dim k As Integer
Dim s As Single
s = 0
******* 错误2 *******
For i = 1 To 100
k = 1 / i
s = s + k
******* 错误3 *******
k = 1 / i + 1
s = s + k
Next i
Form1.Print s=; s
End Sub
程序调试04
Option Explicit
Public Sub same()
该过程找出1--1000之间所有的同构数
所谓同构数是指一个数出现在它的平方数的右端
如25在25平方625的右端,则25为同构数
利用数字转字符再取出右端字符的方法进行判断
Dim i As Long
Dim x1 As String, x2 As String
For i = 1 To 1000
x1 = -------1-------- 将i转字符型
x2 = -------2-------- 将i^2转字符型
If ------3
显示全部