《Visual Basic程序设计基础》习题.docx
- 文档编号:8707938
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:57
- 大小:656.42KB
《Visual Basic程序设计基础》习题.docx
《《Visual Basic程序设计基础》习题.docx》由会员分享,可在线阅读,更多相关《《Visual Basic程序设计基础》习题.docx(57页珍藏版)》请在冰豆网上搜索。
《VisualBasic程序设计基础》习题
《VisualBasic程序设计基础》教材
习题
第1章VisualBasic6.0程序设计概述
习题
一、判断题
1.VisualBasic是以结构化的Basic语言为基础、以事件驱动作为运行机制的可视化程序设计语言。
2.属性是VisualBasic对象性质的描述,对象的数据就保存在属性中。
3.同一窗体中的各控件可以相互重叠,其显示的上下层次的次序不可以调整。
4.在VisualBasic中,有一些通用的过程和函数作为方法供用户直接调用。
5.控件的属性值不可以在程序运行时动态地修改。
6.许多属性可以直接在属性表上设置、修改,并立即在屏幕上看到效果。
7.所谓保存工程,是指保存正在编辑的工程的窗体。
8.在面向对象的程序设计中,对象是指可以访问的实体。
9.决定对象是否可见的属性是Visible属性,决定对象可用性的属性是Enabled属性。
10.保存VisualBasic文件时,若一个工程包含多个窗体或模块,则系统先保存工程文件,再分别保存各窗体或模块文件。
11.xxx.vbp文件是用来管理构成应用程序xxx的所有文件和对象的清单。
12.事件是由VisualBasic预先定义的对象能够识别的动作。
13.事件过程可以由某个用户事件触发执行,它不能被其他过程调用。
14.窗体中的控件,是使用工具箱中的工具在窗体上画出的各图形对象。
15.同一个窗体文件只能用于一个工程中。
16.由VisualBasic语言编写的应用程序有解释和编译两种执行方式。
17.在打开一个VisualBasic工程进行修改后,要另存为一个版本,只需单击“工程另存为…”就行,因为系统将同时保存其他文件。
18.当用Load命令将窗体装入内存时,一定触发窗体的load事件和Activate事件
19.“方法”是用来完成特定操作的特殊子程序。
20.“事件过程”是用来完成事件发生后所要执行的程序代码。
二、选择题
1.工程文件的扩展名为。
A、.frxB、.basC、.vbpD、.frm
2.以下4个选项中,属性窗口未包含的是。
A、对象列表B、工具箱C、属性列表D、信息栏
3.下列不属于对象的基本特征的是。
A、属性B、方法C、事件D、函数
4.在设计模式双击窗体中的对象后,VisualBasic将显示的窗口是。
A、项目(工程)窗口B、工具箱C、代码窗口D、属性窗口
5.VisualBasic中“程序运行”允许使用的快捷键是。
A、F2B、F5C、Alt+F3D、F8
6.改变控件在窗体中的上下位置应修改该控件的属性。
A、TopB、LeftC、WidthD、Right
7.窗体模块的扩展名为。
A、.exeB、.basC、.frxD、.frm
8.窗体的FontName属性的缺省值是。
A、宋体B、仿宋体C、楷体D、黑体
9.FontSize属性用以设置字体大小,窗体的FontSize属性缺省值为。
A、5B、9C、12D、16
10.在VisualBasic中,称对象的数据为。
A、属性B、方法C、事件D、封装
11.下列选项中不属于事件的是。
A、DblclickB、LoadC、ShowD、KeyUp
12.将VisualBasic编制的程序保存在磁盘上,至少会产生何种文件。
A、.doc与.txtB、.com与.exeC、.bat与.frmD、.vbp与.frm
三、填空题
1.面向对象的程序设计是一种以为基础,由驱动对象的编程技术。
2.对象的3要素是、、。
3.窗体是用来存放的容器,窗体的left和top属性是相对对象的。
4.事件是由VisualBasic预先定义的能够识别的动作。
5.改变控件在窗体中的左右位置,应修改该控件的属性,改变上下位置,应修改该控件的属性。
6.设置对象的属性有两种办法,一种是在设计时在窗口中设置;另一种是在运行时设置,设置格式为。
大部分属性可以用以上两种方法进行设置,而有些属性只能用其中一种方法设置。
7.对窗体Form内各控件不能用鼠标任意精确定位是由于窗体中的起作用。
8.新建工程时系统会自动将窗体标题设置为。
9.在打开某窗体时,初始化该窗体中的各控件,应选用事件。
10.每当一个窗体成为活动窗口时触发事件,当另一个窗体或应用程序被激活时在原活动窗体上产生事件。
四、程序设计题
1.编一程序,程序运行的初始界面如图10-1所示,当用户在文本框中输入姓名,例如输入“张三”,单击“确定”按钮,则程序的运行情况如图10-2所示,如果单击“结束”按钮,即结束程序运行。
图10-1程序运行后初始界面
图10-2单击“确定”按钮后的程序界面
2.在窗体上建立4个命令按钮Command1、Command2、Command3和Command4。
要求:
(1)命令按钮的Caption属性分别为“字体变大”、“字体变小”、“加粗”和“标准”。
(2)每单击Command1按钮和Command2按钮一次,字体变大或变小3个单位。
(3)单击Command3按钮时,字体变粗;单击Command4按钮时,字体又由粗体变为标准。
(4)4个按钮每单击一次都在窗体上显示“欢迎使用VB”。
(5)双击窗体后可以退出。
3.设计一窗体,窗体上有1个文本框(Text1)、1个命令按钮(Command1),运行时文本框中显示“VisualBasic程序设计”,命令按钮标题为“结束”,文本框及命令按钮能随窗体大小的调整而自动调整大小及位置,其中调整文本框使其:
Left=0,Top=0,宽度和高度都为窗体的一半;命令按钮:
始终位于窗体右下角位置。
请编写:
(1)用代码初始化各控件(提示:
可写在Form_Load事件中)。
(2)文本框控件随窗体的大小而调整大小的代码,以及调整命令按钮位置始终位于窗体右下角的代码(提示:
调整大小位置的代码写在Form_Resize事件中)。
(3)结束程序运行的代码(命令按钮)。
第2章程序设计基础
习题
一、判断题
1.整型变量有Byte、Integer、Long类型3种。
2.Byte类型的数据,其数值范围在-255~255之间。
3.VisualBasic的Double类型数据可以精确表示其数值范围内的所有实数。
4.在逻辑运算符Not、Or、And中,运算优先级由高到低依次为Not、Or、And。
5.关系表达式是用来比较两个数据的大小关系的,结果为逻辑值。
6.一个表达式中若有多种运算,在同一层括号内,计算机按函数运算→逻辑运算→关系运算→算术运算的顺序对表达式求值。
7.赋值语句的功能是计算表达式值并转换为相同类型数据后为变量或控件属性赋值。
8.用DIM定义数值变量时,该数值变量自动赋初值为0。
9.函数InputBox的前3个参数分别是输入对话框的提示信息、标题以及默认值。
10.函数MsgBox的前3个参数分别表示默认按钮、按钮样式以及图标样式。
二、选择题
1.Integer类型数据能够表示的最大整数为。
A、275B、215-1C、216D、216-1
2.货币类型数据小数点后面的有效位数最多只有。
A、1位B、6位C、16位D、4位
3.输入对话框InputBox的返回值的类型是。
A、字符串B、整数C、浮点数D、长整数
4.运算符“\”两边的操作数若类型不同,则先再运算。
A、取整为Byte类型B、取整为Integer类型
C、四舍五入为整型D、四舍五入为Byte类型
5.Int(Rnd*100)表示的是范围内的整数。
A、[0,100]B、[1,99]C、[0,99]D、[1,100]
6.下列程序段的输出结果是。
a=10:
b=10000:
x=log(b)/log(a):
Print"lg(10000)=";x
A、lg(10000)=5B、lg(10000)=4C、4D、5
7.返回删除字符串前导和尾随空格符后的字符串,用函数。
A、TrimB、LtrimC、RtrimD、mid
8.Print语句的一个输出表达式为,则输出包括日期、时间信息。
A、DateB、MonthC、TimeD、Now
9.语句Print"5*5"的显示结果是。
A、25B、"5*5"C、5*5D、出现错误提示
10.语句“Form1.PrintTab(10);"#"”的作用是在窗体当前输出行。
A、第10列输出字符“#”B、第9列输出字符“#”
C、第11列输出字符“#”D、输出10个字符“#”
三、填空题
1.语句“DimCAs”定义的变量C,可用于存放控件的Caption的值。
2.长整型变量(Long类型)占用个字节。
3.表达式Right(String(65,Asc("abc")),3)的值是。
4.表达式2*4^3+4*6/3+3^2的值是。
5.表达式16/2-2^3*7Mod9的值是。
6.表达式81\7Mod2^2的值是。
7.已知字符串变量x存放"1234",表达式Val("&H"+Left$(x,Len(x)/2))的值是。
8.语句PrintNot10>15And8<5+2的输出结果为。
9.设x为一个两位数,将其个位和十位数交换后所得两位数的VisualBasic表达式是。
10.用随机函数产生一个两位整数的VisualBasic表达式是。
11.求a与b之积除以c的余数,用VisualBasic表达式可表示为。
12.算术式ln(x)+sin(30º)的VisualBasic表达式为。
13.声明单精度常量PI代表3.1415926的语句是。
14.#20/5/01#表示类型常量。
15.设I为大于0的实数,写出大于I的最小整数的表达式。
四、程序设计题
1.编程,输入圆的半径,计算并输出圆的面积,按下列要求分别实现:
(1)界面设计尽可能美观、大方。
(2)创建一个文本框控件用于输入,单击命令按钮后通过标签控件显示计算结果。
(3)修改界面和程序:
单击命令按钮后,调用Inputbox函数输入数据,通过标签控件显示计算结果。
(4)新建一个文件夹,保存工程(工程文件、窗体文件等等,可以用缺省的名称,也可以重命名)在该文件夹中,然后退出VisualBasic。
(5)求计算结果具有15位有效位数,重新打开工程,检查程序并决定是否修改。
2.编程,创建文本框控件Text1用于输入,单击窗体后通过标签控件Label1显示计算结果(输入数据自行确定),事件过程如下:
PrivateSubForm_Load()
DimxAsSingle,yAsSingle
x=Text1.Text
Label1.Caption=Sin(x)
EndSub
(1)运行该程序,体会Single类型数据有效位数不超过6位,以及Sin函数的自变量为弧度制,等等。
(2)修改该程序,体会其他数学函数、字符运算函数的功能以及使用规则。
第3章结构化程序设计与数组
习题
一、判断题
1.若行If语句中逻辑表达式值为True,则关键字Then后的若干语句都要执行。
2.在行If语句中,关键字EndIf是必不可少的。
3.块If结构中的Else子句可以缺省。
4.For/Next语句中,循环控制变量只能是整型变量。
5.For/Next语句中,“Step1”可以缺省。
6.For/Next循环正常(未执行ExitFor)结束后,控制变量的当前值等于终值。
7.在循环体内,循环变量的值不能被改变。
8.Do/LoopWhile结构中的循环体,至少被执行一次。
9.Do/LoopUntil结构的循环,是“先判断、后执行(循环体)”的循环结构。
10.使用OnErrorGoTo语句并编写相应程序,可以捕获程序中的编译错误。
二、选择题
1.下列关于SelectCase之测试表达式的叙述中,错误的是。
A、只能是变量名B、可以是整型C、可以是字符型D、可以是浮点类型
2.下列关于SelectCase的叙述中,错误的是。
A、Case10To100表示判断Is是否介于10与100之间
B、Case"abc","ABC"表示判断Is是否和"abc"、"ABC"两个字符串中的一个相同
C、Case"X"表示判断Is是否为大写字母X
D、Case-7,0,100表示判断Is是否等于字符串"-7,0,100"
3.由“Fori=1To16Step3”决定的循环结构被执行()次。
A、4B、5C、6D、7
4.若i的初值为8,则下列循环语句的循环次数为次。
DoWhilei<=17
i=i+2
Loop
A、3次B、4次C、5次D、6次
5.由“Fori=1To9Step-3”决定的循环结构被执行次。
A、4B、5C、6D、0
6.窗体通用部分的语句“OptionBase1”,决定本窗体中数组下标界。
A、下界必须为1B、缺省的下界为1C、下界必须为0D、缺省的下界为0
三、填空题
1.若x>y,则交换变量x、y值的行If语句写作。
2.SelectCase结构中测试表达式的值,在其表达式列表中用表示。
3.用InputBox函数为数组B所有元素B(0)、B
(1)、…、B(9)依次赋值的语句写作。
4.声明动态数组的语句是语句。
5.语句“DimcAs”定义的变量c,可用于存放控件的Caption的值。
6.用Dimc(2to5)AsInteger语句定义的数组占用个字节的内存空间。
四、程序阅读题(写出下列程序的运行结果)
程序1.请写出单击窗体后,窗体上的显示结果。
PrivateSubForm_Click()
DimaAsInteger,sAsInteger
a=5:
s=0
DoWhilea<=0
s=s+a:
a=a-1
Loop
Prints;a
EndSub
程序2.请写出输入8、9、3、0后窗体上的显示结果。
PrivateSubForm_Click()
DimiAsInteger,sumAsInteger,mAsInteger
Do
m=InputBox("请输入m","累加和等于"&sum)
Ifm=0ThenExitDo
sum=sum+m
Loop
Printsum
EndSub
程序3.请写出单击窗体后,窗体上的显示结果。
PrivateSubForm_Click()
Dima(5)AsByte,iAsByte
a(0)=1
Fori=1To5
a(i)=a(i-1)+i:
Printa(i);
Nexti
EndSub
程序4.请写出单击窗体后,窗体上的显示结果。
PrivateSubForm_Click()
Dima(5,5)AsByte,iAsByte,jAsByte
Fori=1To5:
Forj=1To5
a(i,j)=i*j
Nextj,i
Fori=1To5:
Printa(i,i);:
Nexti
EndSub
程序5.请写出单击窗体后,窗体上的显示结果。
PrivateSubForm_Click()
DimiAsInteger,jAsInteger
Fori=1To6
PrintSpc(6-i);
Forj=1To(2*i)-1:
Print"W";:
Nextj
Nexti
EndSub
程序6.请写出单击窗体后,窗体上的显示结果。
PrivateSubForm_Click()
Dima(1To2,1To3)AsInteger,iAsInteger,jAsInteger
Fori=1To2
Forj=1To3
a(i,j)=i+j:
PrintTab(j*5+2);a(i,j),
Nextj
Nexti
EndSub
五、程序填空题
1.【程序说明】下面是一段计算数学表达式的程序。
PrivateSubFormClick()
DimnAsInteger,pAsInteger,sAsSigle,qAsInteger,iAsInteger
n=InputBox("请输入N的值:
")
s=0:
p=-1:
q=1
Fori=1Ton
p=-p:
q=
(1)
s=
(2)
(3)
Prints
EndSub
2.【程序说明】下列程序求两个正整数m、n的最大公约数。
PrivateSubForm_Click()
DimmAsInteger,nAsInteger,rAsInteger
m=InputBox("请输入M的值:
"):
n=InputBox("请输入N的值:
")
Printm;"和";n;"的最大公约数是:
"
r=mModn
DoUntil
(1)
m=n:
n=r:
r=
(2)
Loop
Printn
EndSub
3.【程序说明】下列程序用来在窗体上输出如图10-3所示的数据。
12345
23452
34512
45123
51234
图10-3
PrivateSubForm_Click()
Dima(5,5)AsByte,iAsByte,jAsByte
Fori=1To5
Forj=1To6-i
a(i,j)=
Nextj,i
Fori=2To5
Forj=
To5
a(i,j)=j+i-6
Nextj,i
Fori=1To5
Forj=1To5
Printa(i,j);
Nextj
Nexti
EndSub
4.【程序说明】以下程序产生30个两位随机整数、并按从小到大的顺序存入数组a中,再将其中的奇数按从小到大的顺序在窗体中用紧凑格式输出。
PrivateSubFormClick()
Dima(30)Asbyte,iasByte,jAsByte,mAsByte
Fori=1To30:
a(i)=
:
Nexti
Fori=1To29
Forj=
Ifa(i)>a(j)Then
m=a(i):
:
a(j)=m
EndIf
Nextj,i
Fori=1To30
If
ThenPrinta(i);
Nexti
EndSub
六、程序设计题
1.用InputBox函数输入3个任意整数,按从大到小的顺序输出。
2.编程,输入x值,按下式计算并输出y值。
3.编程,在窗体上输出九九乘法表。
4.计算下式的和,变量x与n的数值用输入对话框输入。
5.用近似公式求自然对数的底数e的值,直到前后两项之差小于10-4为止。
6.编程,输入n(n为1位正整数),输出n+1层的杨辉三角形。
如n为6时,输出结果如图10-4所示。
图10-4
第4章函数与过程
习题
一、判断题
1.函数过程与Sub过程必须用关键字Private或Public声明。
2.用关键字Public声明的过程可以被其他模块调用。
3.调用过程时的实参必须是与对应形参类型相同的表达式。
4.声明形参处缺省传递方式声明,则为按值传递(Byval)。
5.Sub过程中的语句ExitSub,使控制返回到调用处。
6.Sub过程名在过程中必须被赋值。
7.用Public声明的数组是全局量。
8.过程中的静态变量是局部变量,当过程再次被执行时,它的值是上一次过程调用后的值。
二、填空题
1.数组名作过程实参,相应的形参传递方式为。
2.一维长整型数组a作过程形参写作“a()AsLong”,二维长整型数组b作过程形参写作“”。
3.过程形参为整型,对应实参为5.64,复制到形参的值为。
4.调用过程时对形参的改变不会导致相应实参变量的改变,则该形参采用(按值传递/按地址传递)方式。
5.调用过程时对形参的改变就是对相应实参变量的改变,则该形参采用(按值传递/按地址传递)方式。
6.声明Single类型全局变量x,写作。
7.声明Integer类型静态变量x,写作。
8.在窗体Form1的过程中引用窗体Form2中的全局变量y,写作。
三、程序阅读题(写出下列程序的运行结果)
程序1.请写出单击窗体后,窗体上的显示结果。
DimiAsInteger,nAsInteger
PrivateSubForm_Click()
DimiAsInteger
Fori=1To3
s=sum(i):
Print"s=";s
Nexti
EndSub
PrivateFunctionsum(nAsInteger)
StaticjAsInteger
j=j+n+1:
sum=j
EndFunction
程序2.请写出单击窗体、输入5后,窗体上的显示结果。
PrivateSubForm_Click()
DimiAsInteger,jAsInteger,mAsInteger
m=InputBox("请输入数组的行、列数")
ReDima(m,m)AsInteger
CallP(a,m)
Fori=1Tom
Forj=1Toi:
PrintTab(j*3);a(i,j);:
Nextj
Nexti
EndSub
PrivateSubP(b()AsInteger,nAsInteger)
DimiAsInt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Visual Basic程序设计基础 Visual Basic程序设计基础习题 Visual Basic 程序设计 基础 习题