VB课后习题参考答案.docx

上传人:b****4 文档编号:24471131 上传时间:2023-05-27 格式:DOCX 页数:64 大小:433.82KB
下载 相关 举报
VB课后习题参考答案.docx_第1页
第1页 / 共64页
VB课后习题参考答案.docx_第2页
第2页 / 共64页
VB课后习题参考答案.docx_第3页
第3页 / 共64页
VB课后习题参考答案.docx_第4页
第4页 / 共64页
VB课后习题参考答案.docx_第5页
第5页 / 共64页
点击查看更多>>
下载资源
资源描述

VB课后习题参考答案.docx

《VB课后习题参考答案.docx》由会员分享,可在线阅读,更多相关《VB课后习题参考答案.docx(64页珍藏版)》请在冰豆网上搜索。

VB课后习题参考答案.docx

VB课后习题参考答案

第1章参考答案1

第2章参考答案1

第3章参考答案5

第4章参考答案7

第5章参考答案10

第6章参考答案15

第7章参考答案19

第8章参考答案23

第9章参考答案26

第10章参考答案35

第11章参考答案36

第12章参考答案39

第1章参考答案

一、简答题(略)

二、单选题:

1.A2.D3.C4.B5.A

6.D7.C

三、填空题:

1.设计运行

2.Proj1Demo1

3.程序代码控件

4.编译可执行文件

5.可视化

6.窗体对象

7.视图F4

实验部分(略)

第2章参考答案

一、简答题(略)

二、找出以下语句中的错误

1.False---错,因为False是VB的关键字或保留字

2.Integers-----错,正确的写法是dimx,y,zasinteger

3.a+b=c改为c=a+b

4.Mode----错,应改为mod

5.37001---错,因为x取值范围是–32768----32767

6.÷-----错,应该写为/

7..E----错,E的左边必须是一个数字

8.错,赋值符号的左边字符串缺了双引号

9.1---错,应改为:

”1”

10.错,正确的是:

#01-01-00#

三、编写语句完成以下任务

1.设这3个数用x、y、z表示,则求3个数乘积的表达式为:

x*y*z

2.Optionexplicit

3.Form1.print“PrintTexttoTheWindows”

4.Dimresultaslong

Result=(x+y+z)/3

5.Dimxasinteger,yasinteger,zasinteger

6.Y=3*x^5+2*x^4-6*x^3-1

四、数据常量有:

”Xname”(字符串型)、True(逻辑型)、517.3(实数型)、

"2/08/05"(日期时间型)、#1-1#(日期时间型)、

”String”(字符串型)、1(整型)

数据变量有:

Xname、X

VB关键字:

Step

五、表达式为:

1.6

2.2002-1-1

3.xyz123abc

4.xyz123abc

5.12

6.11

六.程序段1在窗体上输出为:

57

-2-9

FalseFalse

程序段2在窗体上输出为:

Visual

TheDemoBasic

实验部分

1.参考代码:

PrivateSubForm_Click()

DimxAsInteger,yAsInteger,zAsInteger

x=InputBox("请输入:

")

y=InputBox("请输入:

")

z=InputBox("请输入:

")

Printx+y+z

Printx*y*z

Print(x+y+z)/3

EndSub

2.参考代码和界面如下:

PrivateSubCommand1_Click()

DimrAsInteger

r=InputBox("请输入圆半径:

")

Label1.Caption=2*r&""

Label1.Caption=Label1.Caption&3.14*r^2&""

Label1.Caption=Label1.Caption&2*3.14*r

EndSub

PrivateSubCommand2_Click()

DimrAsInteger

Label1.Caption=""

r=InputBox("请输入圆半径:

")

Label1.Caption=2*r&""

Label1.Caption=Label1.Caption&3.14*r^2&""

Label1.Caption=Label1.Caption&2*3.14*r

EndSub

PrivateSubCommand3_Click()

End

EndSub

3.参考代码:

PrivateSubForm_Click()

DimaAsInteger

a=InputBox("请输入:

")‘输入的值分别是16,33等

MsgBox"注意观测!

",a,"消息框"

EndSub

4.参考代码和界面如下:

PrivateSubcommand1_Click()

DimtempAsInteger

text1.Text=""

text2.Text=""

text3.Text=""

Label4.Caption="+"

text1.Text=InputBox("请输入第一个数:

")

text2.Text=InputBox("请输入第二个数:

")

temp=Val(text1.Text)+Val(text2.Text)

text3.Text=temp

EndSub

PrivateSubcommand2_Click()

DimtempAsInteger

text1.Text=""

text2.Text=""

text3.Text=""

Label4.Caption="-"

text1.Text=InputBox("请输入第一个数:

")

text2.Text=InputBox("请输入第二个数:

")

temp=Val(text1.Text)-Val(text2.Text)

text3.Text=temp

EndSub

PrivateSubCommand3_Click()

DimtempAsInteger

text1.Text=""

text2.Text=""

text3.Text=""

Label4.Caption="*"

text1.Text=InputBox("请输入第一个数:

")

text2.Text=InputBox("请输入第二个数:

")

temp=Val(text1.Text)*Val(text2.Text)

text3.Text=temp

EndSub

PrivateSubCommand4_Click()

DimtempAsSingle

text1.Text=""

text2.Text=""

text3.Text=""

Label4.Caption="/"

text1.Text=InputBox("请输入第一个数:

")

text2.Text=InputBox("请输入第二个数:

")

temp=Val(text1.Text)/Val(text2.Text)

text3.Text=temp

EndSub

第3章参考答案

一、单选题

1.D2.A3.C4.D5.B

二、填空题

1、SmallChange2、Locked设置为True3、Int(Rnd*900+100)

4、(2*3.1415926*R+Exp(-5))*Log(X+1)5、续行符”_”

二、程序阅读题

1、2、

实验部分:

1、参考代码

PrivateSubForm_Click()

DimaAsSingle,bAsSingle,hAsSingle,sAsSingle

a=InputBox("输入梯形的上底")

b=InputBox("输入梯形的下底")

h=InputBox("输入梯形的高")

s=(a+b)*h/2

MsgBox"梯形面积为:

"&Round(s,2)

EndSub

2、参考代码

PrivateSubForm_Load()

Form1.Caption="颜色示例"

HScroll1.Max=255

HScroll1.SmallChange=10

HScroll1.LargeChange=20

HScroll2.Max=255

HScroll2.SmallChange=10

HScroll2.LargeChange=20

HScroll3.Max=255

HScroll3.SmallChange=10

HScroll3.LargeChange=20

Label1.Caption="红"

Label2.Caption="绿"

Label3.Caption="蓝"

Label4.Caption=0

Label5.Caption=0

Label6.Caption=0

Text1.Text=""

EndSub

4、参考代码

PrivateSubCommand1_Click()

CurrentX=500

CurrentY=500

Print"水光潋艳晴方好,山色空蒙雨亦奇"

CurrentX=500

CurrentY=1000

Print"欲把西湖比西子,淡妆浓抹总相宜"

EndSub

PrivateSubCommand2_Click()

Form1.FontUnderline=False

Form1.FontItalic=False

Form1.FontBold=True

Form1.Cls

CurrentX=500

CurrentY=500

Print"水光潋艳晴方好,山色空蒙雨亦奇"

CurrentX=500

CurrentY=1000

Print"欲把西湖比西子,淡妆浓抹总相宜"

EndSub

PrivateSubCommand3_Click()

Form1.FontBold=False

Form1.FontUnderline=False

Form1.FontItalic=True

Form1.Cls

CurrentX=500

CurrentY=500

Print"水光潋艳晴方好,山色空蒙雨亦奇"

CurrentX=500

CurrentY=1000

Print"欲把西湖比西子,淡妆浓抹总相宜"

EndSub

PrivateSubCommand4_Click()

Form1.FontBold=False

Form1.FontItalic=False

Form1.FontUnderline=True

Form1.Cls

CurrentX=500

CurrentY=500

Print"水光潋艳晴方好,山色空蒙雨亦奇"

CurrentX=500

CurrentY=1000

Print"欲把西湖比西子,淡妆浓抹总相宜"

EndSub

PrivateSubCommand5_Click()

End

EndSub

PrivateSubForm_Load()

Form1.FontSize=16

Form1.Caption="字体示例"&Time

EndSub

第4章参考答案

一、

1、A2、D3、B4、D

二、

1、框架2、ifx1^2+y1^2<=93、value4、该框架

三、

s=4

s=5.2

s=8

实验:

1.

PrivateSubCommand1_Click()

DimxAsSingle

x=Val(InputBox("请输入X"))

Ifx<-2Then

Y=(3*x*x-x-1)/x

ElseIfx<1Then

Y=Sin(x)+2^x

Else

Y=(Sqr(x-1)+Log(x)/Log(10))/2

EndIf

Label1.Caption="你输入的X是"+Str(x)+",得到的Y值是"+Str(Y)

EndSub

2.

PrivateSubForm_Click()

DimaAsInteger,bAsInteger,cAsInteger

a=Val(InputBox("请输入第一个数a"))

b=Val(InputBox("请输入第一个数b"))

c=Val(InputBox("请输入第一个数c"))

Max=a

Ifb>MaxThenMax=b

Ifc>MaxThenMax=c

PrintMax

EndSub

3.

OptionExplicit

PrivateSubForm_Load()

Form1.Caption="个人所得税"

Label1.Caption="薪金总额"

Text1.Text=""

Label2.Caption=""

Command1.Caption="计算"

EndSub

PrivateSubCommand1_Click()

DimxAsSingle,yAsSingle

x=Val(Text1.Text)

x=x-1600

Ifx>40000Orx<-1600Then

MsgBox"输入的薪金有错",,"出错"

ElseIfx>=0Andx<=500Then

y=x*0.05

ElseIfx>=500Andx<=2000Then

y=500*0.05+(x-500)*0.1

ElseIfx>=2000Andx<=5000Then

y=500*0.05+1500*0.1+(x-2000)*0.15

ElseIfx>=5000Andx<=20000Then

y=500*0.05+1500*0.1+3000*0.15+(x-5000)*0.2

ElseIfx>20000Then

y=500*0.05+1500*0.1+3000*0.15+15000*0.2+(x-20000)*0.25

Else

y=0

EndIf

Label2.Caption="个人所得税为:

"&Str(y)

EndSub

4.

PrivateSubForm_click()

s=Val(InputBox("请输入计算机文化成绩"))

SelectCases

Case180To200

Prints,"优"

Case160To179

Prints,"良"

Case140To159

Prints,"中"

Case120To139

Prints,"及格"

Case0To120

Prints,"不及格"

CaseElse

Prints,"输入成绩错误"

EndSelect

EndSub

第5章参考答案

一、单选题

1、C2、C3、C4、C5、B

二、填空题

1、F2、7,353、0

三、程序阅读

1、37

55

46

28

2、6

四、程序填空

Whilen<=0Orn>=30

k=0

sum+1/(k*(k+1))

五、略

六、

1.

PrivateSubCommand1_Click()

DimxAsInteger,nAsInteger,iAsInteger

Randomize

x=Int(Rnd

(1)*99+1)

Fori=1To10

y=Val(InputBox("请输入一个小于100的整数","猜数游戏"))

Ify=xThen

MsgBox"恭喜你猜中啦!

"+"你猜了"+Str(i)+"次",48

ExitFor

ElseIfy>xThen

MsgBox"对不起,猜大了!

"+"你已经猜了"+Str(i)+"次",48

ElseIfy

MsgBox"对不起,猜小了!

"+"你已经猜了"+Str(i)+"次",48

EndIf

Ifi=10ThenMsgBox"对不起,你已经猜了10次,下次再来",vbCritical+vbDefaultButton1+vbExclamation

Next

EndSub

PrivateSubCommand2_Click()

End

EndSub

2.

PrivateSubCommand1_Click()

DimaAsInteger,bAsInteger,cAsInteger

DimnAsInteger,iAsInteger

Cls

Print"a","b","c"

Fora=1To50

Forb=aToc

Forc=bTob

Ifc*c=b*b+a*aThen

Printa,b,c

n=n+1

EndIf

Nexta

Nextb

Nextc

Print"符合要求的三角形个数有:

";n;"个"

EndSub

3.

PrivateSubCommand1_Click()

DimaAsInteger,bAsInteger

Fora=1To100

Forb=1To100

IfInt(Sqr(a+b))=(Sqr(a+b))AndInt(Sqr(Abs(a-b)))=(Sqr(Abs(a-b)))Then

Printa;b,

n=n+1

IfnMod3=0ThenPrint

EndIf

Nextb

Nexta

EndSub

4.

PrivateSubCommand1_Click()

DimiAsInteger,jAsInteger

Fori=1To9

Forj=1Toi

Printi;"*";j;"=";i*j;

Ifi*j<10ThenPrintSpc

(1);

Nextj

Print

Nexti

EndSub

5.

PrivateSubCommand1_Click()

DimxAsString,iAsInteger,x1asinteger

x=val(Text1.Text)

IfOption1.Value=TrueThen

Dowhilex>0

x1=xmod10

x=x\10

Text2.Text=text2.text&x

loop

ElseIfOption2.Value=TrueThen

Dowhilex>0

x1=xmod10

x=x\10

Text2.Text=val(text2.text)+x1

loop

ElseIfOption3.Value=TrueThen

Text2.text=”1”

Dowhilex>0

x1=xmod10

x=x\10

Text2.Text=val(text2.text)*x1

loop

EndIf

EndSub

PrivateSubOption1_Click()

Text2.Text=""

EndSub

PrivateSubOption2_Click()

Text2.Text=""

EndSub

PrivateSubOption3_Click()

Text2.Text=""

EndSub

6.

PrivateSubCommand1_Click()

DimiAsInteger,jAsInteger,nAsInteger

Cls

n=Val(InputBox("请输入图案的行数","输入"))

Fori=1Ton

PrintSpc(25-i);

Forj=1To2*i-1

Print"*";

Nextj

Print

Nexti

EndSub

第6章参考答案

一.思考题

二.填空题

1.mouseup

2.产生对象.Dragover事件

3.一个对象的DragMode属性要么是1,要么是0,它在属性窗口或程序代码中被设置。

4.MouseMove

5.指针类型,1799

6,Shift

7.拖放

8.move

9.KeyPress,对应按键的ASCII码。

KeyDown或KeyUp,Shift

10.Click,当前窗体的输出位置

11.右键,菜单

12.ALT

13.Visible,Enabled

14.Click,1

15.EnabledFalse

16.连接符”-”

17.5

18.Clipboard.Clear

19.文本,Clipboard.GetText

20.PopupMenu,CallPopupMenu菜单名称

实验

1.

PrivateSubText1_Change()

IfVal(Text1.Text)>=0AndVal(Text1.Text)<=15Then

Me.MousePointer=Val(Text1.Text)

Else

MsgBox"数据输入错误,请输入0-15的数"

Text1.SelStart=0

Text1.SelLength=Len(Text1.Text)

EndIf

EndSub

2.

PrivateSubForm_Load()

Form1.KeyPreview=True

Command1.TabIndex=0

EndSub

PrivateSubform_KeyPress(KeyAsciiAsInteger)

DimDigit1AsInteger

I

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

当前位置:首页 > 高等教育 > 理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1