VB课后习题答案1_第1页
VB课后习题答案1_第2页
VB课后习题答案1_第3页
VB课后习题答案1_第4页
VB课后习题答案1_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章

一.选择题

1-5DCDBB6-10DCCCC

第2章

二.选择题

1A2D3c4B5A

6D7A8B9C10C

三.填空题

1.对象、属性、值

2.视图、工具箱

3.属性、对象、事件、方法

4.事件和方法

5.窗体对象

第3章VB语言基础参考答案

一.选择题

1.B2.B3.B4.C5.C6.D7.A8.B9.B10.B11.A

第4章

一.选择题

1-5BCCAC6-10BCBCA11-14ABDD

二.编程题

1.顺序结构,选择结构,循环结构

2.PrivateSubForm_Click()

DimiAsInteger,sAsSingle

s=0

Fori=1TO5

x=Val(InputBox("请输入第“&i&“个数”))

Printx;

s=s+x

Nexti

Print

Print”五个数的和为:”;s,”平均值为s/5

EndSub

3.PrivateSubForm_Click()

n$=InputBox("请输入您的姓名")

AGE$=InputBox("请输入您的年龄”)

addr$=InputBox("请输入您的通信地址”)

pos$=InputBox("请输入您的邮政编码”)

tel$=InputBox("请输入您的电话号码”)

Print

PrintTab(6);“姓名”;Space$(3);“年龄";Space$(3);”通信地址”;Space$(5);”邮政编码";Space$(3);”电话号

码“

Print

PrintTab(5);n$;Space$(3);AGE$;Space$(3);addr$;Space$(3);pos$;Space$(3);tel$

EndSub

4.PrivateSubForm_Click()

DimzAsString,xAsInteger,yAsString

RandomizeTimer

x=Int(Rnd*9000)+1000

Print”产生的随机数为:”;x

y=CStr(x)

Fori=4To1Step-1

z=z&Mid(y,i,1)

Nexti

Print”倒序数为:”;z

EndSub

5.PrivateSubForm_Click()

DimpAsDouble

DimrAsSingle

DimnAsInteger

p=1300000000#

r=0.01

n=0

DoUntilp>=1700000000#

p=p*(1+r)

n=n+1

Loop

Printn;”年后,我国人口达到17亿”

EndSub

6.PrivateSubForm_Click()

DimaAsSingle,bAsSingle,cAsSingle,sAsSingle,areaAsSingle

a=Val(InputBox("请输入a边的边长”))

b=Val(InputBox("请输入b边的边长”))

c=Val(InputBox("请输入c边的边长”))

Ifa+b<=cOrb+c<=aOrc+a<=bThen

MsgBox”所输入的值不能构成三角形”

Else

s=(a+b+c)/2

area=Sqr(s*(s-a)*(s-b)*(s-c))

Print"三角形的面积为:";area

EndIf

EndSub

7.PrivateSubCommandl_Click()

DimrAsSingle,taxAsSingle

r=Val(Text1.Text)

Ifr<=800Then

tax=0

Elselfr>800Andr<=2000Then

tax=(r-800)*0.1

Elselfr>2000Then

tax=(r-800)*0.2

EndIf

Text2.Text=Str(tax)

EndSub

8.PrivateSubForm_Click()

DimiAsInteger,jAsInteger,kAsInteger,tAsInteger

Print”水仙花数如下:”

Fori=1To9

Forj=0To9

Fork=0To9

t=i*100+j*10+k

IfiA3+jA3+kA3=tThenPrintt;

Nextk

Nextj

Nexti

EndSub

9.PrivateSubForm_Click()

s=l:i=1

DoWhiles<=400000

i=i+2

s=s*i

Loop

Print”其大于400000的最小值为:s

EndSub

10.PrivateSubForm_Click()

DimaAsInteger,iAsInteger,nAsInteger,tAsSingle,sAsSingle

RandomizeTimer

a=Int(Rnd*9)+1

n=VaI(InputBox("输入累加的项数:”))

Print"产生的随机数为:";a;"项数为:”;n

Fori=1Ton

t=t*10+a

s=s+1

Nexti

Print"累加的结果为";s

EndSub

第5章

一、选择题

1.D2.D3.B4.D5.C6.C7.A8.B9.C10.C11.D12.B13.A14.A15.B16.A

二、填空题

1.NameIndex

2.Preserve

3.变体

4.12或arrl(l)Min=arrl(i)

5.a(i,j)a(i,j)=a(j,i)t

6.2to6arr(i)>max7.Left(cl,i)

四、编程题

1.Dima(lto10)asInteger

DimiAsInteger

Fori=1To10'输入

a(i)=Val(InputBox(〃输入a的值"))

Nexti

Fori=1To10,打印

printa(i);

Nexti

Fori=1To10\2,倒置

t=a(i)

a(i)=a(10-i+l)

a(10-i+l)=t

NextI

Print,换行

Fori=1To10,输出

printa(i);

Nexti

2.程序要点:

Max=a(l,1)

Fori=1ToN

Forj=1ToM

Ifa(i,j)>MaxThen

Max=a(i,j)

EndIf

Nextj

Nexti

Print〃最大元素是〃;Max

3.OptionExplicit

Dimaddress(100,2)AsString

PrivateSubCommandlClickO

DimiAsInteger

DimnameAsString

DimfoundAsBoolean

found=False

'name=InputBox(〃请输入查询的姓名〃,〃数据输入〃)

name=Textl.Text

Fori=0To100

Ifaddress(i,0)=nameThen

found=True

MsgBoxname+〃的家庭地址是:〃+address(i,1)

ExitFor

EndIf

Nexti

Iffound=FalseThenMsgBox〃查无此人!

EndSub

PrivateSubFormLoad()

address(0,0)=〃张洪〃

address(0,1)二〃湖北宜昌〃

address(1,0)=〃王玉〃

address(1,1)二〃江苏淮阴〃

address(2,0)=〃李明〃

address(2,1)二〃湖南长沙〃

EndSub

4.设计方法:在窗体上添加6个命令按钮,用来触发有关运算的事件过程;3个图片框,分别用来显示A

矩阵、B矩阵及各种运算结果。参考程序如下:

OptionExplicit

OptionBase1

DimA(4,4)AsInteger,B(4,4)AsInteger

PrivateSubCommandl_Click()'生成并显示A、B矩阵

Dimi%,j%

Picturel.Cis

Picture2.Cis

Pictures.Cis

Fori=1To4

Forj=1To4

A(i,j)=Int(Rnd*11+30)

Picturel.PrintA(i,j);”

B(i,j)=Int(Rnd*11+10)

Picture2.PrintB(i,j);

Nextj

Picturel.Print

Picture2.Print

Nexti

EndSub

PrivateSubCommand2Click()'矩阵AB相乘存入C

DimC(4,4)AsInteger,i%,j%,Max%,H%,L%

Picture3.Cis:Picture3.Print

Pictures.Print矩阵AB相乘存入C"&vbCr;vbCr;矩阵C为:”

Picture3.Print

Fori=1To4

Forj=1To4

C(i,j)=A(i,1)*B(l,j)+A(i,2)*B(2,j)+A(i,3)_

*B(3,j)+A(i,4)*B(4,j)

Pictures.PrintC(i,j);

Nextj

Picture3.Print

Nexti

Picture3.Print

EndSub

PrivateSubCommand3_Click()),并找出C中最大、最小元素及其下标

Dimi%,j%

Picture3.Cis

Pictures.Print找出C中最大、最小元素及其下标”:Pictures.Print

'Max中存最大值,H(L)中存最大值所在行(列)下标

Max=C(l,1):H=1:L=1

Fori=1To4

Forj=1To4

IfC(i,j)>MaxThen

Max=C(i,j)

H=i

L=j

EndIf

Nextj

Nexti

Picture3.Print最大值二“;Max&vbCr;vbCr;所在下标二〃;H;

'MIN中存最大值,H(L)中存最大值所在行(列)下标

Min=C(l,1):H=1:L=1

Fori=1To4

Forj=1To4

IfC(i,j)<MinThen

Min=C(i,j)

H=i

L=j

EndIf

Nextj

Nexti

Picture3.Print最小值=";Min&vbCr;vbCr;所在下标二";H;〃,“;L

EndSub

PrivateSubCommand4_Click()'矩阵A第一-行与B第三行交换

Dimi%,j%

Picture3.Cis:Pictures.Print

Picture3.Print矩阵A第一行与B第三行交换:〃

Fori=1To4

T=A(l,i):A(l,i)=B(3,i):B(3,i)=T

Nexti

EndSub

PrivateSubCommand5_Click()'两条对角线元素平均值

Dimi%,SI%,S2%,S%

Picture3.Cis

Pictures.Print两条对角线元素平均值:

SI=0

Fori=1To4

Picture3.PrintSpc((i-1)*4);

Picture3.PrintA(i,i)

SI=SI+A(i,i)

Nexti

Pictures.Print〃元素之和二”;SI;vbCr

Pictures.Print〃矩阵A右.上左下对角元素:

S2=0

Fori=4To1Step-1

Pictures.PrintSpc((i-1)*4);

Picture3.PrintA(5-i,i)

S2=S2+A(5-i,i)

Nexti

Pictures.Print〃元素之和S2

Pictures.Printz,两条对角线元素平均值二〃;(SI+S2)/8

EndSub

PrivateSubCommand6_Click()'一维数组

Dimi%,j%,k%,D(1To16)AsInteger

Pictures.Cis:Picture3.Print

Pictures.Print〃将矩阵A按列顺存入一维数组D〃&vbCr

Pictures.Print〃D数组各元素为:〃&vbCr

Fori=1To4

Forj=1To4

k=(i_i)*4+j'数组D元素下标

D(k)=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论