VB程序设计习题及参考答案.docx

上传人:b****8 文档编号:9803916 上传时间:2023-05-21 格式:DOCX 页数:67 大小:120.69KB
下载 相关 举报
VB程序设计习题及参考答案.docx_第1页
第1页 / 共67页
VB程序设计习题及参考答案.docx_第2页
第2页 / 共67页
VB程序设计习题及参考答案.docx_第3页
第3页 / 共67页
VB程序设计习题及参考答案.docx_第4页
第4页 / 共67页
VB程序设计习题及参考答案.docx_第5页
第5页 / 共67页
VB程序设计习题及参考答案.docx_第6页
第6页 / 共67页
VB程序设计习题及参考答案.docx_第7页
第7页 / 共67页
VB程序设计习题及参考答案.docx_第8页
第8页 / 共67页
VB程序设计习题及参考答案.docx_第9页
第9页 / 共67页
VB程序设计习题及参考答案.docx_第10页
第10页 / 共67页
VB程序设计习题及参考答案.docx_第11页
第11页 / 共67页
VB程序设计习题及参考答案.docx_第12页
第12页 / 共67页
VB程序设计习题及参考答案.docx_第13页
第13页 / 共67页
VB程序设计习题及参考答案.docx_第14页
第14页 / 共67页
VB程序设计习题及参考答案.docx_第15页
第15页 / 共67页
VB程序设计习题及参考答案.docx_第16页
第16页 / 共67页
VB程序设计习题及参考答案.docx_第17页
第17页 / 共67页
VB程序设计习题及参考答案.docx_第18页
第18页 / 共67页
VB程序设计习题及参考答案.docx_第19页
第19页 / 共67页
VB程序设计习题及参考答案.docx_第20页
第20页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

VB程序设计习题及参考答案.docx

《VB程序设计习题及参考答案.docx》由会员分享,可在线阅读,更多相关《VB程序设计习题及参考答案.docx(67页珍藏版)》请在冰点文库上搜索。

VB程序设计习题及参考答案.docx

VB程序设计习题及参考答案

练习题

习题一

一、判断题

1.VisualBasic是以结构化的Basic语言为基础、以事件驱动作为运行机制的可视化程序设计语言。

2.面向对象的程序设计是一种以对象为基础,由事件驱动对象的编程技术。

3.事件是由VisualBasic预先定义的对象能够识别的动作。

4.新建工程时系统会自动将窗体标题设置为Form1。

5.控件的属性值不可以在程序运行时动态地修改。

×

6.决定对象是否可见的属性为Visible属性,决定对象可用性的属性是Enabled属性。

7.保存VisualBasic文件时,若一个工程包含多个窗体或模块,则系统先保存工程文件,再分别保存窗体或模块文件。

8.单击“启动”菜单项将窗体装入内存时,一定触发窗体的Load事件。

9.“事件过程”是用来完成事件发生后所要执行的程序代码。

10.在打开某窗体时,初始化该窗体中的各控件,应选用Load事件。

二、选择题

1.工程文件的扩展名为。

A、.frxB、.basC、.vbpD、.frm

2.下列不属于对象的基本特征是。

A、属性B、方法C、事件D、函数

3.在设计模式双击窗体将显示的窗口是。

A、工程窗口B、工具箱C、代码窗口D、属性窗口

4.VB中运行程序的快捷键是。

A、F2B、F5C、Alt+F3D、F8

5.改变控件在窗体中的上下位置应修改该控件的属性。

A、TopB、LeftC、WidthD、Right

6.窗体模块的文件扩展名是。

A、.exeB、.basC、.frxD、frm

7.设置窗体的字体用属性。

A、FontNameB、FontSizeC、FontBoldD、FontItalic

8.设置窗体的字号用属性。

A、FontNameB、FontSizeC、FontBoldD、FontItalic

9.下列选项中不属于事件的是。

A、DblclickB、LoadC、ShowD、KeyUp

10.VB编制的程序保存在磁盘上,至少会产生何种文件。

A、.doc与.txtB、.com与.exe.C、.bat与.frmD、.vbp与.frm

三、程序设计题

1.新建一个工程,单击窗体时,在窗体上显示“欢迎使用VisualBasic程序”。

生成可执行文件,保存到D盘根目录下。

2.建立一个工程,界面如图1-28所示。

它由一个窗体、两个文本框和两个命令按钮组成。

单击“拷贝”按钮,可以将第一个文本框中显示的内容复制到第二个文本框中;单击“退出”按钮退出应用程序。

代码设计:

PrivateSubCommand1_Click()

Text2.Text=Text1.Text

EndSub

PrivateSubCommand2_Click()

End

EndSub

 

图1-28题2界面图1-29题3界面

3.在窗体上添加一个标签和两个命令按钮,并把两个命令按钮的标题分别设置为“隐藏标签”和“显示标签”。

当单击第一个命令按钮时,标签消失;而当单击第二个命令按钮时,标签重新出现,并且标签中显示“VB程序设计”。

界面如图1-29所示。

习题二

一、判断题

1.用DIM定义数值变量时,该数值变量自动赋初值为0。

×

2.整型数值常量有整数,长整数两种。

×

1.在逻辑运算符Not、Or、And中,运算优先级由高到低依次为Not、Or、And。

2.关系表达式是用来比较两个数据的大小关系的,结果为逻辑值。

3.一个表达式中若有多种运算,同一层括号内,计算机按逻辑运算→关系运算→算术运算的顺序对表达式求值。

4.赋值语句的功能是计算机表达式并转换为相同类型数据后为变量或控件属性赋值。

二、单选题

1.以下合法的VisualBasic标识符是_______。

A、ForLoopB、ConstC、9abcD、A#x

2.下列可作为VisualBasic变量名的是_________。

A、a#aB、4aC、?

xyD、Consta

3.表达式6*7/8Mod9的值是_______。

A、4B、5C、6D、7

4.将数学表达式cos2(a+b)+5e2写成VisualBasic表达式,其正确的形式是_______。

A、cos(a+b)^2+5*Exp

(2)B、cos^2(a+b)+5*Exp

(2)

C、cos(a+b)^2+5*Ln

(2)D、cos^2(a+b)+5*Ln

(2)

5.数学关系3≤x<10表示成正确的VB表达式为________。

A、3<=x<10B、3<=xandx<10

C、x>3orx<10D、3<=xand<10

6.设x=4,y=8,z=7,表达式xz)orz

A、1B、-1C、TrueD、False

7.已知变量a、b、c中c最小,下列判别a、b、c能否构成三角形的逻辑表达式为_________。

A、a>=bandb>=candc>0B、a+c>bandb+c>aandc>0

C、(a+b>=cora-b<=c)andc>0D、a+b>canda-b0

8.下面进行算术运算符号的是_______。

A、ImpB、ModC、NotD、Like

9.可以同时删除字符串前导和尾部空白的函数是_______。

A、LtrimB、RtrimC、TrimD、Mid

10.Rnd函数不可能为下列_______值。

A、0B、1C、0.1234D、0.0005

11.Int(198.555*100+0.5)/100的值是_______。

A、198B、199.6C、198.56D、200

12.如果x是一个正实数,对x的第3位小数四舍五入的表达式是______。

A、0.01*Int(x+0.005)B、0.01*Int(100*(x+0.005))

C.、0.01*Int(100*(x+0.005))D.、0.01*Int(x+0.05)

13.执行语句s=len(Mid(“VisualBasic”,1,6))后,s的值为______。

A、VisualB、BasicC、6D、11

14.描述x、y中有一个小于z的逻辑表达式是_______。

A.x

15.Int(Rnd*100)表示的是______范围内的数。

A、[0,100]B、[1,99]C、[0,99]D、[1,100]

16.输入对话框inputbox的返回值的类型是_________。

A、字符串B、整数C、浮点数D、长整数

17.在一行内写多个语句时,每个语句之间要用_____符号分隔。

A、,B、;C、:

D、、

18.一个语句要在下一行中继续书写,可以用______符号作为续行符。

A、+B、-C、_D、…

19.下列声明语句中错误的是_________。

A、Constvar1=123B、Dimvar2=’abc’

C、dima,basstringD、dimvar3asinteger

20.PrintNot10>15And8<5+2的输出结果为_____。

A、8B、7C、trueD、false

三、程序设计题

1.编写窗体的单击事件代码,求一任意三角形的面积,三角形的三条边a、b、c通过Inputbox函数输入,计算的结果存入S变量中,并以消息框的形式输出。

提示:

任意三角形的面积公式

2.编写一段代码,求给定的一个圆的周长和面积。

要求:

(1)圆的半径r利用Inputbox函数从键盘任意输入(r>0)。

(2)圆周率定义为符号常量。

(3)利用赋值语句将求出的周长和面积赋给变量L和S。

(4)用Print方法输出详细结果。

习题三

一、选择题

1.执行以下语句后的结果为。

DimxAsInteger

IfxThenPrintxElsePrintx-1

A、1B、0C、-1D、不确定

2.下列关于SelectCase测试表达式的叙述中,错误的是。

A、只能是变量名B、可以是整型C、可以是字符型D、可以是浮点类型

3.下列关于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"

4.由“Fori=1To16Step3”决定的循环结构被执行次。

A、4B、5C、6D、7

5.若i的初值为8,则下列循环语句的循环次数为次。

DoWhilei<=17

i=i+2

Loop

A、3次B、4次C、5次D、6次

6.由“Fori=1To9Step-3”决定的循环结构被执行次。

A、4B、5C、6D、0

二、程序阅读题(写出下列程序的运行结果)

程序1.请写出单击窗体后,窗体上的显示结果。

PrivateSubForm_Click()

DimxAsInteger,yAsInteger

x=5

y=-20

IfNotx>0Thenx=y-3Elsey=x+3

Printx-y;y-x

EndSub

程序2.请写出单击窗体后,窗体上的显示结果。

PrivateSubForm_Click()

DimaAsString,bAsString

a="abcd"

b="cdef"

e=Right(a,3)

f=Mid(b,2,3)

Ife

EndSub

程序3.请写出单击窗体后,窗体上的显示结果。

PrivateSubForm_Click()

DimiAsInteger,jAsInteger

DimnAsInteger

n=0

Fori=1To3

Forj=5To1Step-1

n=n+1

Nextj,i

Printn;j;i

EndSub

程序4.请写出单击窗体后,窗体上的显示结果。

PrivateSubForm_Click()

DimiAsInteger

StaticSumAsInteger

Fori=1To10

Sum=Sum+i

Nexti

PrintSum

EndSub

程序5.请写出单击命令按钮后,窗体上的显示结果。

PrivateSubCommand1_Click()

DimsAsInteger,iAsInteger

s=1

i=1

DoWhilei<=4

s=s*i

i=i+1

Loop

Print"s=";s

EndSub

程序6.请写出单击命令按钮后,窗体上的显示结果。

PrivateSubCommand1_Click()

DimiAsInteger

DoUntili>=3

PrintTab(4*i+1);"A"

i=i+1

Loop

EndSub

三、程序填空题

1.【程序说明】下面是一段计算数学表达式的程序。

PrivateSubForm_Click()

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.【程序说明】下列程序用于计算1+(1+3)+(1+3+5)+…+(1+3+5+…+39)。

PrivateSubForm_Click()

DimtAsInteger,mAsInteger

DimsumAsInteger

t=0

m=1

sum=0

Do

t=

(1)

sum=sum+t

(2)

LoopWhile(3)

Print"sum=";sum

EndSub

3.【程序说明】下列程序在文本框Text1中输入任一字符串,并按相反的顺序显示在文本框Text2中。

PrivateSubCommand1_Click()

DimnAsString,cAsString,dAsString

n=Text1.Text

m=

(1)

Fori=mTo1Step-1

c=Mid(n,i,1)

d=

(2)

Nexti

(3)

EndSub

四、程序设计题

1.用InputBox函数输入3个任意整数,按从大到小的顺序输出。

2.编程,输入x值,按下式计算并输出y值。

3.计算下式的和,变量x与n的数值用输入对话框输入。

4.用近似公式求自然对数的底数e的值,直到前后两项之差小于10-4为止。

习题四

一、选择题

1.窗体通用部分的语句“OptionBase1”,决定本窗体中数组下标界。

A、下界必须为1B、缺省的下界为1C、下界必须为0D、缺省的下界为0

2.用Dimc(2to5)AsInteger语句定义的数组占用个字节的内存空间。

A、4B、8C、6D、10

3.以下是VB合法的数组元素。

A、x9B、x[9]C、x(9)D、x{9}

4.设有数组声明语句:

Dima(2,3to4)AsInteger

以上语句所定义的数组a为维数组,共有个元素,第一维下标从到,第二维下标从到。

A、0B、1C、2D、3E、4F、5G、6H、9

二、程序阅读题(写出下列程序的运行结果)

程序1.在窗体中添加一个命令按钮,名称为Command1,然后编写如下程序:

PrivateSubCommand1_Click()

Dima(5)AsInteger,b(5)AsInteger

Forj=1to4

a(j)=3*j

b(j)=a(j)*3

Nextj

Text1.text=b(j\2)

EndSub

程序运行后,单击命令按钮,写出程序的运行结果。

程序2.在窗体中添加一个命令按钮(其Name属性为Command1),然后编写如下代码:

PrivateSubCommand1_Click()

Dima(10)AsInteger

Dimp(3)AsInteger

k=1

Fori=1To10

a(i)=i

Nexti

Fori=1To3

p(i)=a(i*2)

Nexti

Fori=1To3

k=k+p(i)*2

Nexti

Printk

EndSub

程序运行后,单击命令按钮,写出程序的运行结果。

程序3.请写出单击窗体后,窗体上的显示结果。

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

程序4.请写出单击窗体后,窗体上的显示结果。

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

Print

Nexti

EndSub

三、程序填空题

1.【程序说明】以下程序产生30个两位随机整数、并按从小到大的顺序存入数组a中,再将其中的奇数按从小到大的顺序在窗体中用紧凑格式输出。

PrivateSubForm_Click()

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

2.【程序说明】以下程序产生20个两位随机整数存于数组之中,打印数组中大于50的数,并求出这些数的和。

PrivateSubCommand1_Click()

Dimarr(1To20)AsInteger

DimiAsInteger,sumAsInteger

Fori=1To20

arr(i)=⑴

Nexti

sum=0

Fori=1To20

If⑵Then

Printarr(i);

sum=⑶

EndIf

Nexti

PrintTab

(2);"sum=";sum

EndSub

3.【程序说明】下列程序用来在窗体上输出如图4-2所示大小可变的正方形数据。

Dima()AsInteger

PrivateSubForm_Click()

DimnAsInteger,iAsInteger

图4-2n为7时的输出图形

DimjAsInteger,kAsInteger

n=Val(InputBox("请输入数据:

"))

Fori=1To⑵

Forj=iTon-i+1

Fork=iTon-i+1

Nextk,j,i

Fori=1Ton

Forj=1Ton

PrintTab(j*3);a(i,j);

Nextj

Nexti

EndSub

四、程序设计题

1.设有a,b两矩阵,编程完成两个矩阵的相乘,结果存入c矩阵中。

2.编程产生10个[20,40]之间的随机整数存于一维数组a中,将a数组中的元素依次向后移动一个位置,最后一个元素移动到第一个元素的位置上。

3.用二分法对已排好序(升序)的数据进行检索。

说明:

二分查找法是对一批有序的数,取其中间元素,如果该元素是要找的数(key),输出该数的位置,否则,如果该元素大于key,则查找数列的范围缩小到该元素的前一个元素;如果该元素小于key,则查找数列的范围缩小为该元素的后一个元素到数列尾。

重复上述方法,直到查找的数列范围缩小到0个元素。

习题五

一、选择题

1.在过程调用中,参数的传递可以分为和两种方式。

A、按值传递B、按地址传递C、按参数传递D、按位置传递

2.在参数传递过程中,使用关键字来修饰参数,可以使之按值传递。

A、ByValB、ByRefC、ValueD、Reference

3.在窗体模块的通用声明段中声明变量时,不能使用关键字。

A、DimB、PublicC、PrivateD、Static

4.要想在过程调用后返回两个结果,下面的过程定义语句合法的是。

A、Subp(Byvaln,Byvalm)B、Subp(n,byvalm)

C、Subp(n,m)D、Subp(Byvaln,m)

5.Sub过程与Function过程最根本的区别是。

A、Sub过程可以使用Call语句或直接使用过程名调用,而Function过程不可以

B、Function过程可以有参数,Sub过程不可以

C、两种过程参数的传递方式不同

D、Sub过程的过程名不能返回值,而Function过程能通过过程名返回值

二、程序阅读题(写出下列程序的运行结果)

程序1.请写出三次单击命令按钮后,窗体上的显示结果。

PrivateSubp()

StaticsAsInteger

DimiAsInteger

Fori=1To10Step2

s=s+i

Nexti

Prints;

EndSub

PrivateSubCommand1_Click()

Callp

EndSub

程序2.请写出单击命令按钮后,窗体上的显示结果。

PrivateSubs(xAsSingle,yAsSingle)

DimmAsSingle

m=x

x=m/y

y=tMody

EndSub

PrivateSubCommand1_Click()

DimaAsSingle,bAsSingle

a=8

b=5

Calls(a,b)

Printa,b

EndSub

三、程序填空题

1.【程序说明】如果两个质数的差为2,就称这两个质数为质数对。

下列程序用于输出100以内的质数对。

PrivateFunctionp(mAsInteger)AsBoolean

DimiAsInteger

(1)

Fori=2ToSqr(m)

If

(2)Thenp=False:

ExitFor

Nexti

EndFunction

PrivateSubCommand1_Click()

DimiAsInteger

Dimp1AsBool

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2