解:
C。
在书写表达式时,要注意与数学中的表达式的区别。
注:
选项D是不正确的,可以参见第4小题。
29.多分支选择结构中,SelectCase语句的“测试表达式”。
A)只能是数值表达式B)只能是字符串表达式
C)可以是关系表达式或逻辑表达式D)可以是数值表达式或字符串表达式
解:
D。
30.多分支选择结构Case语句的<变量值列表>是用来指明。
A)<测试表达式>的值域B)<测试表达式>的类型
C)<测试表达式>的取值个数D)<测试表达式>的入口
解:
D。
31.For-Next循环的初值、终值与步长。
A)只能是具体的数值B)只能是表达式
C)可以是数值表达式D)可以是任何类型的表达式
解:
C。
32.Do-Loop[While|Until]循环体的作用说明正确的是。
A)不能用Do-Loop语句设计出预先确定循环次数的循环
B)While关键字或Until关键字必须选择其中之一
C)While关键字或Until关键字可以同时使用
D)While关键字或Until关键字的作用正相反
解:
B,D。
33.要使循环体至少执行一次,应使用循环。
A)For-NextB)While-WendC)[While|Until]D)Do-Loop[While|Until]
解:
D。
34.关于循环结构的使用说明正确的是。
A)For-Next循环不能共用同一个终端语句
B)任何一种循环都必须有起始语句和终端语句
C)不能用while-Wend语句设计出确定循环次数的循环
D)循环体没有执行完毕,不能在中途结束循环
解:
B。
35.关于ExitFor的使用说明正确的是。
A)ExitFor语句可以退出任何类型的循环
B)一个循环中只能有一个这样的语句
C)ExitFor表示返回For语句去执行
D)一个For循环中可以有多条ExitFor语句
解:
D。
1.使用过程是为了。
A)使程序模块化B)使程序易于阅读
C)提高程序运行速度D)便于系统的编译
解:
A。
使用过程,从语法上来看,可以使程序模块化。
这种模块化可以达到“任务分解”及“代码重用”的目的。
36.Sub过程的定义。
A)一定要有形参B)一定要指明是公有的还是私有的
C)一定要有过程的名称D)一定要指定其类型
解:
C。
37.Function过程有别于Sub过程的最主要的特点是。
A)Function过程一定要有虚参,而Sub过程可以没有虚参
B)Function过程的终端语句是EndFuntion,而Sub过程的终端语句是EndSub
C)Function过程是用于计算函数值,而Sub过程是用于改变属性值
D)Function过程要返回函数值,而Sub过程没有数值返回
解:
D。
38.要定义一个过程为局部过程,应使用关键字。
A)StaticB)PublicC)PrivateD)Sub
解:
C。
39.过程级变量属于。
A)全局变量B)静态变量C)局部变量D)变体变量
解:
C。
40.关于过程调用正确的是。
A)过程要用Call语句调用
B)Sub过程一定要用Call语句调用
C)过程都可以用赋值语句的形式调用
D)只要写上过程名并给出实参就能调用过程
解:
D。
过程调用有两种形式,一是使用Call,一是省略Call。
注意当省略Call时,后面的圆括号必须省略(除非只有一个参数)。
41下列控件中属于复选框控件的是。
A)LabelB)TextBoxC)CheckBoxD)ListBox
解:
C。
常见的控件及窗体对应的中义分别是:
CheckBox复选框
ComboBox组合框
CommandButton命令按钮
DirListBox目录列表框
DriveListBox磁盘列表框
FileListBox文件列表框
Form窗体
Frame框架
HScrollBar水平滚动条
Image图像
Label标签
Line直线
ListBox列表框
MDIFromMDI窗体
Menu菜单
OLEContainerOLE容器
OptionButton单选框
PictureBox图片框
Shape形状
TextBox文本框
Timer计时器
42不具有输入数据功能的是。
A)文本框B)选项按钮C)列表框D)窗体
解:
D。
43不支持双击事件的控件的是。
A)FormB)CheckBoxC)ListBoxD)OptionButton
解:
B。
44由系统自动触发的第一个窗体的事件是。
A)ClickB)DblClickC)PaintD)Load
解:
D。
45在程序运行期间属性值不允许改变的属性是。
A)CaptionB)NameC)BackColorD)Enabled
解:
B。
46属性值为字符串的属性是。
A)CaptionB)ValueC)WidthD)Height
解:
A。
4710.OptionButton控件和CheckButton控件都有Value属性项,下列叙述正确的是。
A)都是设置控件是否可用
B)都是设置控件是否被选中
C)OptionButton的Value属性值是逻辑值,CheckButton的Value属性值是数值。
D)OptionButton的Value属性值是数值,CheckButton的Value属性值是逻辑值。
解:
C。
OptionButton的Value属性值是逻辑值(True或False);CheckButton的Value属性值是数值,是CheckBoxConstants的枚举成员:
vbUnChecked(0),vbChecked
(1),vbGrayed
(2)。
48常用控件的Style属性值是。
A)字符常量B)逻辑常量C)数值常量D)日期常量
解:
C。
49可以用作容器的控件有。
A)窗体控件,列表框控件,图像控件B)窗体控件,文本框控件,框架控件
C)窗体控件,框架控件,图片框控件D)窗体控件,标签控件,图片框控件
解:
C。
50列表框中的列表选择项目是通过属性来设置的。
A)ColumnsB)ListC)ListIndexD)Height
解:
C。
51列表框控件中的列表内容是通过属性设置的。
A)NameB)CaptionC)ListD)Text
解:
C。
52组合框控件是将组合成一个控件。
A)列表框控件和文本框控件B)标签控件和列表框控件
C)标签控件和文本框控件D)复选框控件和选项按钮控件
解:
A。
53将命令按钮设为窗体的取消按钮要设置的属性是。
A)QuitB)CancelC)不能实现D)以上都不对
解:
B。
将Cancel属性设为True,则该按钮代表窗体的取消按钮。
54在标签控件中,如果要将文字多行显示,应设置的属性项是。
A)MultiLineB)WordWrapC)AutoSizeD)在代码中用Chr(10)
解:
B。
55文本框控件中要将全部内容都显示为某种字符,需要设定的属性项是。
A)PasswordB)PasswordCharC)需要编程来实现D)以上都不是
解:
B。
56要使文本框可输入多行文字,要更改的默认选项是。
A)ScrollBarsB)MultiLineC)ScrollBars和MultiLineD)以上都不是
解:
B。
要注意与第17小题的区别。
57下列说法中正确的是。
A)窗体、命令按钮、标签和文本框控件对象都有TabIndex属性
B)不同控件的TabIndex属性可以相同
C)同一窗体中不同控件的TabIndex属性值必须小于窗体中的控件个数
D)同一窗体中不同控件的TabIndex属性值可以任意设置
解:
C。
58如果要输出简单信息,可使用。
A)InputBox函数B)MsgBox函数C)ShowFont方法D)ShowPrinter方法
解:
B。
59要使窗体Form1显示出来,应使用。
A)LoadForm1B)Show.Form1C)Form1LoadD)Form1.Show
解:
D。
60要使窗体Form1关闭,错误的是。
A)UnloadForm1B)Form1.Enabled=False
C)Form1.HideD)Form1.Visible=False
解:
B。
61对话框在关闭之前,不能继续执行应用程序的其他部分,这种对话框属于。
A)输入对话框B)输出对话框C)模式(模态)对话框D)无模式对话框
解:
C。
62使用通用对话框之前要先将添加到工具箱中。
A)ActiveXB)CommonDialogC)FileD)Open
解:
B。
63与Form1.Show方法效果相同的是。
A)Form1.Visible=TrueB)Form1.Visible=False
C)Visible.Form1=TrueD)Visible.Form1=False
解:
A。
64通用对话框的“打开”对话框的作用是。
A)选择某一文件并打开文件B)选择某一文件但不能打开文件
C)选择多个文件并打开这些文件D)选择多个文件但不能打开这些文件
解:
B。
65关于VB的菜单设计的叙述正确的是。
A)VB的菜单也是一个控件,存在于VB的工具箱中
B)VB的菜单也具有外观和行为的属性
C)VB的菜单设计是在“菜单编辑器”中进行的,它不是一个控件
D)菜单的属性也是在“属性窗口中”设置的
解:
C。
66关于多窗体应用程序的叙述正确的是。
A)连续向工程中添加多个窗体,存盘后只生成一个窗体模块
B)连续向工程中添加多个窗体,会生成多个窗体模块
C)每添加一个窗体,即生成一个工程文件
D)只能以第一个建立的窗体作为启动界面
解:
B。
67下列关于文件名和文件号的说法正确的是。
A)文件名称和文件号在程序中的使用没有区别
B)文件名称和文件号都是用来标识文件的
C)文件名称是用户定义的,文件号是系统自动生成的
D)除Open语句外,其他对文件数据的操作语句中都可以使用文件名或文件号,由用户任选其一
解:
B。
68向顺序文件(文件号为1)写入数据正确的语句是。
A)Print1,a;",";yB)Print#1,a;",";y
C)Printx;yD)Printx,y
解:
B。
注意文件号前面用#。
69在运行应用程序代码给图像控件加载图像的语句格式是。
A)对象.Picture=LoadPicture(“文件名”)
B)对象.LoadPicture(“文件名”)
C)对象.Picture=(“文件名”)
D)LoadPicture(对象,“文件名”)
解:
A。
70运行程序后控件即消失的控件是控件。
A)TimerB)ShapeC)LabelD)Button
解:
A)。
因为Timer控件在运行时是不可见的。
2填空题
1.计算1+2+…+n,当和数大于1000时停止计算。
PrivateSubForm_Click()
DimnAsInteger,sAsInteger,iAsInteger,kAsInteger
s=0:
k=0
__________
Fori=1To1000
k=k+1
s=s+i
_______
Nexti
Prints
EndSub
解:
前一空填n=InputBox(“请输入一个数”)
后一空填Ifk>=nOrs>1000ThenExitFor
2.用For循环编写程序计算1×2×3×…×1000。
当乘积大于32767时停止累乘。
解:
PrivateSubCommand1_Click()
DimiAsInteger,fAsLong
f=1
Fori=1To1000
f=f*i
Iff>32767Then_______
Next
Printf
EndSub
程序中使用了ExitFor来结束循环。
另外,要注意f定义成长整数,而不能定义成Integer类型,否则会造成溢出。
3.下列命令按钮事件过程执行后,输出结果是。
PrivateSubCommand1_Click()
Form=1To10Step2
a=10
Forn=1To10Step2
a=a+2
Nextn
Nextm
Printa
EndSub
解:
输出结果为20
注:
外层循环中,每次都将a首先置为10,然后进行内层循环。
内层循环向a中加2,共进行5次,所以最后结果为20。
4.下面的程序段执行后,x的值为。
x=0
Fori=1To5
Forj=iTo5
x=x+1
Nextj
Nexti
解:
15。
注:
外层循环共进行5次,而内层循环的次数分别为5,4,3,2,1。
所以最后x的值相当于5+4+3+2+1,即15。
5.下列程序段运行后,输出结果为。
b=1
DoWhileb<40
b=b*(b+1)
Loop
Printb
解:
42。
注:
第1次循环,b由1变为1×2,即2;第2次循环,b由2变为2×3,即6;第3次循环,b由6变为6×7,即42;由于42不满足b<40,循环结果。
3编程题
1.至少用两种方法计算:
1!
+2!
+……+10!
解:
PrivateSubCommand1_Click()
DimsAsLong,fAsLong,nAsInteger
DimiAsInteger
'方法1:
双重循环
s=0
Forn=1To10
f=1
Fori=1Ton
f=f*i
Next
s=s+f
Next
Prints
'方法2:
递推法求和
s=0
f=1
Forn=1To10
f=f*n
s=s+f
Next
Prints
EndSub
程序中用了两种方法,其结果均为4037913。
2.菲波那契(Fibonacci)数列的第一项是0,第二项是l,以后各项都是前两项的和,试用递归算法和非递归算法各编写一个程序,求菲波那契数列第N项的值。
解:
PrivateSubCommand1_Click()
DimnAsInteger
n=InputBox("请输入一个数")
PrintFib(n)
PrintFib2(n)
EndSub
FunctionFib(ByValnAsInteger)AsLong
Ifn=1Orn=2