资源描述
第一章
1 从功能上讲,Visual Basic 6.0有3种版本,即:学习版、专业版、企业版
2 与传统的程序设计语言相比,Visual Basic最突出的特点是事件驱动编程机制。
3 Visual Basic 6.0集成环境的主窗口中含有标题栏、菜单栏、工具栏
4 用标准工具栏中的工具按钮不能执行的操作是打印源程序。
5 关于Visual Basic"方法"的概念错误的是方法是对事件的响应
6 在Visual Basic中,称对象的数据为属性
7 Visual Basic应用程序可以用解释方式执行也可以用编译方式执行
第二章
1 计时器控件的Interval属性用于设置Timer事件发生的时间间隔,为了暂时关闭计时器,应把该计时器的Enabled属性设置为False ,如果要求设置定时器时间间隔为1秒钟,那么它的Interval属性值应该等于1000
2 利用Ctrl + G操作可以打开立即窗口 。
3 假定窗体上有一个标签,名为Lable1。为了使该标签透明并且没有边框,则正确的属性设置为
Lable1.BackStyle = 0 Lable1.BorderStyle = 0 .
4 在设计阶段,当双击窗体上的某个控件时,所打开的窗口是代码窗口
5 在Visual Basic中,窗体文件的扩展名为FRM
6 窗体的Name属性指定窗体的名称,用来标识一个窗体
7 改变控件在窗体中的上下位置,应修改该控件的属性是Top
8 表示滚动条控件取值范围最大值的属性是Max
9 如果要改变窗体的标题,则需要设置的属性是Caption
10 在文本框(Text)中,通过ForeColor属性来设置字体颜色
11 若要求从文本框中输入密码时在文本框中只显示*号,则应当在此文本框的属性窗口中设置
Passwordchar属性值为*
12 能够改变复选框中背景颜色的属性是Backcolor
13 图片框是不具有Picture属性的对象???
14 窗体的Name属性指定窗体的名称 ,用来标识一个窗体
15 要想返回文本框中输入的内容则可利用text属性进行编程
第三章
1 用于从字符串左边截取字符的函数是Left( ),设a="Visual Basic",使b="Basic"的语句是b=Left(a,8,5)。
2 下列符号中哪个是VB程序中合法的变量名:A ab7 B 7ab C If D a*bc
3 X是小于100的非负数,用VB表达式表达正确的是0<=X and X<100
4 设有如下变量声明 Dim TestDate As Date 为变量TestDate正确赋值的表达方式是
5 TextDate=#1/1/200 2#
6 表达式4 + 5 \ 6 * 7 / 8 Mod 9的值是5,设a=3,b=5,则 表达式(a>b)Or(b>0)值为真。
7 函数String(n,"str")的功能是返回由n个字符组成的字符串
8 设有如下声明:
9 Dim X As Integer 如果Sgn(X) 的值为-1,则X的值是小于0的数
10 Integer类型的数据由2字节组成,Long类型的数据由4字节组成。
11 已知X<Y,A>B,正确表示它们之间关系的式子是Sgn(Y-X)-Sgn(A-B)=-2
12 在一个有①逻辑运算②算术运算及③关系运算混合在一起的表达式(无括号)中,其运算顺序为②③①
13 以下合法的Visual Basic标识符是那些:A ForLoop B Const C 9abc D a#x
14 能正确表示条件"整型变量x值是大于等于-5并且小于等于5"的逻辑表达式-5<=x and x<=5
15 求下列表达式的值:
表达式4+5 \ 6 * 7 / 8 Mod 9 的值是5,表达式5 Mod 3+3\5*2的值是2
设a=2,b=4,c=6,下列表达式a>b Eqv c<a的值为真
设S="中华人民共和国",表达式Left(S,1)+Right(S,1)+Mid(S,3,2)的值为"中国人民"
表达式2*4^2-2*6/3+3\2的值是29
表达式5^2 Mod 252^2的值是1
16 VB算术运算符乘或除、整除、求余的优先级,从高到低依次为乘或除、整除、求余
17 获得系统日期的函数是date()
18 数学式子sin30°写成VB表达式是: Sin(30*3.14/180)
19 在Visual Basic的立即窗口内输入以下语句
20 X=65<CR>
21 ?Chr$(X) <CR>
22 在窗口中显示的结果是 __A__
23 计算下列表达式的值
表达式93 Mod 2^2的值是__1__。
表达式Len("123程序设计ABC")的值是__10__。
Int(198.555*100+0.5)/100的值是__198.56__。
已知A$="12345678",则表达式val(Left$(A$,4)+Mid$(A$,4,2))的值为(123445)
24 数学关系3≤x<10表示成正确的VB表达式为 3<=x And x<10 或 x>=3 and x<10
25 表示x是5的倍数或是9的倍数的逻辑表达式是x mod 5=0 or x mod 9=0
26 s$=“china”:
27 s$=“Beijing”:
28 Print s$
29 以上语句的输出结果是_ __。 参考答案 Beijing
30 表达式Ucase(Mid("abcdefgh",3,4))的值是_ CDEF _。
31 已知a=3.5,b=5.0, c=2.5,d=true,则表达式:a>=0 and a+c>b+3 OR NOT d的值是_ False __。
32
第四章
1 VB中可用MsgBox语句产生一消息框。
2 VB提供了结构化程序设计的三种基本结构,三种基本结构是:选择结构 或 循环结构 或 顺序结构
3 InputBox函数返回值的类型为字符串。
4 J下列语句正确的是 (C)
5 A If A≠B Then Print "A不等于B" B If A<>B Then Printf "A不等于B"
6 C If A<>B Then Print "A不等于B" D If A≠B Print "A不等于B"
7 在Do Until…Loop循环中,判断循环表达式与结束循环的关系是先判断循环表达式,
当表达式值为真时结束循环
8 在While循环中,判断循环表达式与结束循环的关系是先判断循环表达式,当表达式
值为真时执行循环体
9 设a=6,则执行x=IIf(a>5,-1,0)后,x的值为–1
10 要使下列For语句循环执行20次,循环变量的初值应当是多少?
11 For k= __1__To -5 Step -2 参考答案 1:33
12 P77 4。3 次数=INT((终一初)/步长+1)
13
14 以下语句的输出结果是:
15 Print Int(12345.6789*1000.5)/100 参考答案 12345
16 给出下列程序运行的结果
17 (1) x=5
18 y=-6
19 If Not x>0 Then x=y-3 Else y=x+3
20 Print x-y; y-x 结果 -3 3
21 (2)1=4
22 J2=9
23 If J1<J2 Then Print J2 Else Print J1 结果为9
(3)执行以下程序段后,变量c $ 的值为 (Quick BASIC Programing )
a $ = "Visual Basic Programing"
b $ = "Quick"
c $ = b $ & Ucase (Mid $ (a $,7,6)) & Right $ (a $,11)
(4)以下语句的输出结果是032,548.50。
Print Format $ (32548.5, "000,000.00")
(5) 在窗体(Name属性为Formal)上画两个文本框(其Name属性分别为Text1和Text2)和一个命令按钮(Name属性为Command1),然后编写如下两个事件过程:
Private Sub Command1_Click()
A = Text.Text + Text2.Text
Print a
End Sub
Private Sub Formm_Load()
Text1.Text =""
Text2.Text =""
End Sub
程序运行后,在第一个文本框(Text1)和第二个文本框(Text2)中分别输入123和321,
然后单击命令按钮,则输出结果为 123321。
(6 )阅读下面的程序段:
For I = 1 To 3
For j = 1 To I
For k = j To 3
A=A+1
Next k
Next j
Next I
执行上面的三重循环后,a的值为__14 __。
(7) 在窗体上画两个文本框(其Name属性分别为Text1和Text2)和一个命令按钮(其Name属性为Command1),然后编写如下的事件过程:
Private Sub Command1_Click()
X = 0
Do While x<50
X = ( x + 2 ) * ( x + 3 )
N = n+1
Loop
Text1.Text = Str(n)
Text2.Text = Str(x)
End Sub
程序执行后,单击命令按钮,在两个文本框中显示的值分别为2和72。
(8)设a=10,b=5,c=1,执行语句Print a > b > c后,窗体上显示的是False
(9) 在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序:
• Private Sub Command1_Click()
• Static X As Integer‘如果不定义会有什么变化?
• Static Y As Integer ’如果不定义会有什么变化?
• Cls
• Y=1
• Y=Y+5
• X=5+X
• Print X,Y
• End Sub ’这里就把变量给OVER了
End Sub 程序运行时,三次单击命令按钮Commandl后,窗体上显示的结果为15 6
(10) 设有语句 x=InputBox("输入数值","0","示例") 程序运行后,如果从键盘上输入数值10
并按回车键,变量X的值是字符串"10"
(11) 在窗体上有一个文本框控件,要求每一秒钟在文本框中显示一次当前名称为TxtTime:
一个计时器控件,名称为Timerl 的时间。程序为:
Private Sub Timer1_ ( )
TxtTime.text=Time
End Sub 在下划线上应填入的内容是Timer
(12)假定有以下程序段:
For i=1 To 3
For j=5 To 1 Step -1
Print i*j
Next
Next 则语句Print i*j的执行次数是15
(13)以下程序段的输出结果为(4)
x=1
y=4
Do Until y>4
x=x*y
y=y+1
Loop
Print x
(14)在窗体上面画一个文本框 ,然后编写如下事件过程:
Private Sub Form_Activate()
Text1.Text=" "
Text1.SetFocus
For i=1 to 10
Sum=Sum+i
Next
Text1. Text=Sum
End Sub 上述程序的运行结果是55
(15)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
For n = 1 To 20
If n Mod 3 <> 0 Then
m = m + n \ 3
Next n
Print n
End Sub
程序运行后,如果单击命令按钮,则窗体上显示的内容是(21)
(16)设有如下程序:
Private Sub Command1_Click()
Dim sum As Double, x As Double
sum = 0
n = 1
For i = 1 To 5
x = n / i+1
n = n + 1
sum = sum + x
Next
End Sub 该程序通过For循环计算一个表达式的值,这个表达式是(1/2+2/3+3/4+4/5)
(17)下面程序运行后,窗体(Form1)中输出的结果是(True True)
Private Sub Form_Load()
Form1.AutoRedraw=True
X=3:y=5
Print x=3;y=5
(18)下面程序执行的结果是(579)
Private Sub Command1_Click()
A="123":b="456"
C=Val(a)+Val(b)
Print c
End Sub
(19)若i的初值为8,则下列循环语句的循环次数为(5)次
Do While i<=17
i=i+2
Loop
(20)执行下面的程序段后,x 的值为(21)
x=5
For i=1 To 20 Step 2
x=x+i\5
Next I
(21)下面程序运行后,输出的值是(54)
Private Sub Command1_Click()
J=1
While J<5
J=J+1
A=A+J*J
Wend
Print A
End Sub
(22)有如下程序:
Private Sub FormKeyPress(KeyAscii As Integer)
For m=1 To 3
For j=1 To m
For k=j To 3
n=n+m+j-k
Next k
Next j
Next m
Print n
End Sub 程序运行后,按任意键,n的值是(20 )
(23)在窗体上画一个命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
A=″12″
B=″34″
C=″56″
Print A+B+C
End Sub 程序运行后,单击命令按钮,输出结果是(123456)
(24)下面程序运行后输出的结果是(110 20 )
Private Sub Command1_Click()
A=0
For M=1 To 10
A=A+1∶B=0
For J=1 To 10
A=A+1∶B=B+2
Next J∶Next M
Print A;B
End Sub
(25)x=int(Rnd)+3:
if x^2>8 then y=x^2+1:
if x^2=9 then y=x^2-2:
if x^2<8 then y=x^3:
print y
程序运行后输出的结果是 _7_。
(26)执行下面的程序段,x的值为
Private Sub Command1_Click()
For i=1 To 9
a=a + i
Next i
x=Val (i)
MsgBox x
End Sub_ . 参考答案 10
(27)在窗体上有一个命令按钮,然后编写如下程序:
Function Trans(ByVal num As Long) As Long
Dim k As Long
k=1
Do While num
k=k * (num Mod 10)
num=num \ 10
Loop
Trans=k
Print Trans
End Function
Private Sub Command1_Click()
Dim m As Long
Dim s As Long
m=InputBox("请输入一个数")
s=Trans(m) ‘789
End Sub
程序运行时,单击命令按钮,在输入对话框中输入"789",输出结果为 __1__,在输入
对话框中输入"987"输出 __2__在输入对话框中输入"879",输出结果为 __3__.
参考答案 1:504 2:504 3:504
24 表达式Int(4*Rnd+1)*(Int(4*Rnd-1))值的范围是[-4,8]
25 语句x+y=x, 是错误的赋值语句。
26 逻辑表达式Not(1>2) ,其逻辑值为“真”
27 表达式1.5+32>2 Or 7 Mod 3<4 And Not 1的运算结果是(-1)
28 可以将变量A、B值互换的语句是A=C : C=B : B=A
29 执行如下语句:
30 a=inutBox("Today","TomorroW,"Yesterday",,,"Day before yesterday",5)
31 将显示一个输入对话框,在对话框的输入区中显示的信息是 (Yesterday)
32 能在窗体Form1的标题栏中显示"VisualBasic窗体"的语句是(Form1.Caption="VisualBasic窗体" )
33
第五章
1 如果在程序中要将c定义为静态变量,且为整型数,则应使用的语句是(Static a As Integer)
2 声明一个变量为局部变量应该用(Static)
3 Sub过程与Function过程最根本的区别是(Sub过程不能返回值,而Function过程能返回值)
4 若要向列表框添加列表项,可使用的方法是(AddItem)
5 在某个Sub过程中定义的局部变量作用域只限于该过程可以与其它事件过程中定义的局部变量同名
6 Sub过程中不可以嵌套调用Sub过程
7 定有以下函数过程:
8 Function Fun(S As String) As String
9 Dim s1 As String
10 For i=1 To Len(S)
11 s1=UCase(Mid(S,i,1))十s1
12 Next i
13 Fun=s1
14 End Function
15 在窗体上画一个命令按钮,然后编写如下事件过程:
16 Prlvate Sub Commmldl_Click()
17 Dim Str1 As String,Str2 As String
18 Strl=inputbox("请输入一个字符串")
19 Str2=Fun(Strl)
20 Print Str2
21 End Sub
22 程序运行后,单击命令按钮,如果在输入对话框中输入字符串"abcdefg",则单击"确
23 定"按钮后在窗体上的输出结果为 (GFEDCBA)
24 复选框的Value属性为__1__时,表示复选框被选中。
第六章
1 用下面语句所定义的数组的元素个数是(9)
Dim a(-3 to 5) as integer
2 要声明一个长度为256个字符的定长字符串变量str,正确的语句是(Dim str as String*256)
3 设有数组声明语句:
Option Base 0
Dim B(-1 To 10,2 To 9,20) As Integer 则数组B中共有(2016)个元素12*8*21
4 在窗体上画一个命令按钮,名称为Commandl。单击命令按钮时,执行如下事件过
程:
PrlVate Sub Commandl-C1icko
a$="software and hardware"
b$=Right(a$,8)
c$=Mid(a$,1,8)
Msgbox a$,,b$,c$,1
End Sub 则在弹出的信息框的标题栏中显示的信息是 (hardwafe)
5 为了清除列表框中的所有内容,应使用的方法是(Clear)
七程序填空
1 下列程序是判断一个整数(>=3) 是否为素数,请补充完整。
Dim n As Integer
n=InputBox("请输入一个整数(>=3) ")
k=Int(Sqr(n) )
i=2
swit=0
Do While i <= k And swit = 0
If n Mod i = 0 Then
swit = 1
Else
i = i + 1
End If
loop
If swit=0 Then
Print n; "是一个素数。"
Else
Print n; "不是一个素数。"
End If
2 下面程序是用来打印九九乘法表的,请补充完整。
Dim i As Integer, j As Integer, Str1$
Str1 = ""
For i = 1 To 9
For j = 1 To 9
If j <= i Then
Str1 = Str1 + Str$(j) + "×" + Str$(i) + "=" + Str$(Val(i * j))
Else
Str1 = Str1 & Chr(13)
If j >= i Then Exit For
End If
Next j
Next i
Print Str1 参考答案 1:j<=I 2:j>i
3 下面程序的功能是产生10个小于100(不含100) 的随机正整数,并统计其中5的倍数所占比例,但程序不完整,请补充完整。
Sub PR()
Randomize
Dim a(10)
For j=1 To 10
a(i) =Int( __1__)
If __2__ Then k=k + 1
Print a(j)
Next j
Print
Print k / 10
End Sub 参考答案 1:(99 * Rnd)+ 1 2:a(j) Mod 5 = 0
Private Sub Form_Click()
Randomize
Dim a(10)
For j = 1 To 10
a(j) = Int((99 * Rnd) + 1)
If a(j) Mod 5 = 0 Then k = k + 1: Print a(j)
Next j
Print
Print k / 10#
End Sub
4 以下程序的功能是从键盘输入若干个学生的考试成绩,统计并输出最高分和最低分,当输入负数时结束输入,输出结果。请补充完整下列程序段。
Dim x, amax, amin As Single
x=InputBox("Enter a score")
amax=x
amin=x
Do While__1__
If x > amax Then
amax=x
End If
If__2__Then
amin=x
End If
x=InputBox("enter a score")
Loop
Print "max="; amax, "min="; amin 参考答案 1:x>0 2:x<amin
5 在窗体上画一个命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
x=0
Do Until x=-1
a=InputBox("请输入第一个数字a的值")
a=Val(A)
b=InputBox("请输入第二个数字b的值")
b=Val(b)
x=InputBox("请输入第三个数字x的值")
x=Val(x)
a=a + b + x
Loop
Print a
End Sub
在程序运行后,单击命令按钮,在对话框中分别输入5,4,8,5,8,-1,输出结果为 __1__.
参考答案 1:12
5 下列程序的功能是:当x<50时,y=0.8×x;当50≤x≤100时,y=0.7×x;当x>100时,没有意义。
请填空。
Private Sub Command1_Click()
Dim x As Single
x=InputBox("请输入x的值!")
__1__
Case Is < 50
y=0.8 * x
Case 50 To 100
y=0.7 * x
__2__
Print "输入的数据出界!"
End Select
Print x, y
End Sub 参考答案 1:Select Case x 2:Case Else
6 设有如下程序段:
a$="BeijingShanghai"
b$=Mid(a$,InStr(a$,"g")+1)
执行上面的程序段后,变量b$的值为__1__. 参考答案 1:Shanghai
7 执行下面程序,当单击窗体时,显示在窗体上第一行的内容是__1__第二行的内容是__2__
Private Sub Form_Click()
Dim I As Integer,Sum As Intger
For I=0.5 To 8.5 Step2.5
Sum=Sum+I*10
Next I
Print Sum
print I
End Sub 参考答案 1:200 2:10
8 下面程序的功能是对密文解密。密文的加密方法是以字符为单位,取其ASCII码,按逆序保存(例如字母"e"的ASCII码是01100101,密文中则为10100110)。解密是加密的逆过程。完善程序,实现以上功能。(难)
Private Sub Command1_Click()
Dim s As String, st As String, i As Integer,n As Integer
s=Text1
Do Until n >=Len(s)
__1__If n Mod 8 <> 0 Then
st=st &Mid(s,n,1)
Else
st=st & Mid(s,n,1)
List1.AddItem st
__2__End If
Loop
End Sub
Private Sub Command2_Click()
Dim s As String, st As String, i As Integer
For i=0 To
__3__st=List1.List(i)
For j=1 To Len(st)
s=Mid(st,j,1) & s
Next j
For j=Len(s) To 1 Step-1
n=
__4__ Next j
Text2=Text2 & Chr(n)
s=" "
__5__ Next i
End Sub 参考答案 1: n=n+1 2: st="" 3: List1.Listcount 4:n+2^(j-1) 5: n=0
下面程序的功能是,找出100以内所有可以表示成3个连续自然数之和的数。完善程序,实现以上功能。 (难)
Option Explicit
Private Sub Command1_Click()
Dim I As Integer, N As Integer
Dim Js As Integer, S As String
For I =1 To 100
If Fun(I,N,Js)Then
S=Str(I) & "=" & N
Do
__1__N=N+1
S=S & "+" & N
Loop
List1.AddItem S
End If
Next I
End Sub
Private Function Fun(L As Integer, M As Integer, Js As Integer) As Boolean
Dim I As Integer, __2__ K=0 __3__
Do While Sum < L And K < 3
K=K+1
Js=Js+1
Sum=Sum+Js
Loop
If
__4__hen
M=I
Fun=True
E xit For
Exit if
Next I
End Function 参考答案 1:while n<=js-1 2: Sum=0 3:Js=i-1 4:k=3 And Sum=L
复习课
主要内容
1、 VB课程的要求
界面设计、代码设计
2、 围绕界面设计,要掌握的内容:
VB的属性、对象、方法
重点掌握的属性有:
重点掌握的对象有:
重点掌握的方法有:
3、 围绕代码设计,要掌握的内容:
三种基本结构的语句实现
数组
函数
4、 围绕三种基本结构的语句,要掌握的内容:
常量、变量、函数、表达式的定义、运算次序、求值
5、 注意:
代码格式
数据溢出
类型一致
窗体美观、但要实用
举例
见复习题
- 17 -
展开阅读全文