VB教材习题参考答案李杰清华大学出版社2Word下载.docx
- 文档编号:18142947
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:23
- 大小:21.58KB
VB教材习题参考答案李杰清华大学出版社2Word下载.docx
《VB教材习题参考答案李杰清华大学出版社2Word下载.docx》由会员分享,可在线阅读,更多相关《VB教材习题参考答案李杰清华大学出版社2Word下载.docx(23页珍藏版)》请在冰豆网上搜索。
H4B
习题4参考答案
4.2单选题
BDCBD
4.3填空题
1.MsgBox("
是否删除?
"
vbOkCancel+vbQuestion,"
删除"
)
2.TheLengthof12345=5
3.变量或表达式
4.1
5.loop
4.4程序设计题
1.
PrivateSubCommand1_Click()
IfText1.Text="
asdf"
Then
MsgBox"
密码正确!
Else
密码错误"
vbRetryCancel,"
错误"
EndIf
EndSub
2.<
题目中的“连续产生n*n个字母”应该改为“连续产生n个字母”>
Dimn%,y%,i%
n=Val(Text1.Text)
Ifn>
10Orn<
=0Then
MsgBox"
数据超界!
Text1.Text=””
Text1.SetFocus
Else
y=Int((90-65+1)*Rnd)+65
Fori=1Ton
PrintChr(y+i)
Nexti
3.
PrivateSubForm_Click()
Dima!
b!
c!
x1!
x21,d!
a=Val(Text1.Text)
b=Val(Text2.Text)
c=Val(Text3.Text)
d=b*b-4*a*c
Ifd>
=0Then
x1=(-b+Sqr(d))/(2*a)
X2=(-b-Sqr(d))/(2*a)
Printx1;
X2
Print"
没有实根"
EndIf
4.
PrivateSubForm_Click()
Dimi%,j%,s%,n%,q%
n=InputBox("
entern:
q=0
s=0
Forj=1Toi
s=s+j
Nextj
q=q+s
Printq
5.
Dimi%,j%,n%,k%
n=0
Fori=1To3
Forj=1To3
Fork=1To3
Printi&
j&
k,
n=n+1
IfnMod5=0ThenPrint
Nextk
Print"
n="
;
n
6.
Fori=1To9
Forj=0To9
Fork=0To9
n=i*100+j*10+k
Ifn=i^3+j^3+k^3ThenPrintn,
习题5参考答案
5.2单选题
1A2B3C4C5D6D7A8C9D10A11A12B
5.3填空题
1.False
2.Caption
3.0ListCount-1
4.PrintList1.List(3)
5.Combo1.ReMoveItem3
6.LargeChange
7.Timer
8.500
9.Shape
10.Borderstyle
5.4程序设计题
1.
Dimop1,op2,resultAsSingle
DimoperatorAsInteger
PrivateSubCommand1_Click(IndexAsInteger)
IfIndex>
=0AndIndex<
=10Then
Iftxt1.Text="
txt1.Text=CStr(Index+1)
txt1.Text=txt1.Text+CStr(Index+1)
IfIndex>
=12AndIndex<
=15Then
op1=CDbl(txt1.Text)
operator=Index
txt1.Text="
IfIndex=11Then
op2=CDbl(txt1.Text)
SelectCaseoperator
Case12
result=op1+op2
Case13
result=op1-op2
Case14
result=op1*op2
Case15
result=op1/op2
EndSelect
txt1.Text=CStr(result)
op1=0
op2=0
result=0
txt1.Text="
PrivateSubCommand3_Click()
End
2.
PrivateSubchkBold_Click()
IfchkBold.Value=vbCheckedThen
Txt1.FontBold=True
Txt1.FontBold=False
PrivateSubchkUnderline_Click()
IfchkUnderline.Value=vbCheckedThen
Txt1.FontUnderline=True
Txt1.FontUnderline=False
PrivateSubOpt18_Click()
Txt1.FontSize=18
PrivateSubOpt22_Click()
Txt1.FontSize=22
3.
PrivateSubForm_Load()
List1.AddItem"
上海"
北京"
天津"
广东"
辽宁"
陕西"
河南"
深圳"
四川"
重庆"
PrivateSubList1_DblClick()
Fori=0To9
IfList1.ListIndex=iThen
List2.AddItemList1.List(i)
List1.RemoveItemi
Nexti
4.
Timer1.Enabled=True
Timer1.Tag=Text1.Text*60
Frame1.Caption=“现在开始倒计时”
PrivateSubTimer1_Timer()
Timer1.Tag=Timer1.Tag-1
Ifm<
0Then
Timer1.Enabler=False
MsgBox“预定的时间到了!
”,0,“倒计时”
Frame1.Caption=“请输入计时的分钟数:
”
Text1.Text=0
ExitSub
n1=Format(mMod60,“00”)
n2=Format(m\60)Mod60,“00:
”)
n3=Format(m\3600),“00:
Text1.Text=n3&
n2&
n1
习题6参考答案
6.1单选题
1.C2.C3.B4.B5.B
6.D7.B8.B9.A10.A
6.2填空题
1.OptionBase1
2.变体类型
3.preserve(注意:
教材上面写成perserve,教材错误)
4.Variant变体类型
5.9
6.相同,索引号
7.
1).通过复制粘贴的方式创建控件数组
2).在设计时候添加多个同类型的类型控件,然后通过“属性”窗口将这些控件的名称改为相同,并把Index属性设为不同的下标值。
3).使用Load语句动态添加控件数组元素
8.sum+m;
i-1;
sum/i(注意:
倒数第五行的小于符号”<
”应该改成大于符号”>
9.j=9或者UBound(a);
a(i)=a(j);
j=j-1
6.3阅读程序题
1.数组下标越界的错误提示
2.16152845
3.20
6.4程序设计题
Dima(99)AsInteger,i%,j%,flag%,temp%,k%
Fori=0To99
Randomize'
初始化随机数发生器
a(i)=Int((999-0+1)*Rnd+0)'
按要求生成随机数放入数组
j=0
Ifa(i)Mod3=0Anda(i)Mod10<
>
0Then
j=j+1
Printa(i);
IfjMod10=0ThenPrint
满足条件的数的个数为:
&
j
2.
Picture1.Cls
Dimi%,s$,cAsString*1,l%,k%
Dimarr(1To26)AsInteger
s=Text1.Text
l=Len(s)
Fori=1Tol
c=UCase(Mid(s,i,1))
Ifc>
="
A"
Andc<
Z"
arr(Asc(c)-65+1)=arr(Asc(c)-65+1)+1
k=0
Fori=1To26
Ifarr(i)<
Picture1.PrintChr(i+64)&
="
arr(i);
k=k+1
IfkMod6=0ThenPicture1.Print
3.PrivateSubCommand1_Click()
Dima(1To10)AsInteger,i%,j%,t%
Randomize
Cls
排序前:
Fori=1To10
a(i)=Int(Rnd*100+1)
k=i
Forj=iTo10
Ifa(k)<
a(j)Then
k=j
Ifk<
iThent=a(i):
a(i)=a(k):
a(k)=t
排序后:
Dimarr(3,3)AsInteger
Dimmax%,i%,j%,x%,y%,sum%,t%
arr(0,0)=12:
arr(0,1)=23:
arr(0,2)=53:
arr(0,3)=89:
arr(1,0)=16:
arr(1,1)=90:
arr(1,2)=26:
arr(1,3)=11:
arr(2,0)=28:
arr(2,1)=1:
arr(2,2)=98:
arr(2,3)=38:
arr(3,0)=37:
arr(3,1)=32:
arr(3,2)=25:
arr(3,3)=10:
‘数组中的每一个元素可以使用随机函数产生
max=arr(0,0)
x=0
y=0
sum=0
Fori=0To3
Forj=0To3
Ifarr(i,j)>
maxThen
max=arr(i,j)
x=i
y=j
Ifi=jOri+j=3Then
sum=sum+arr(i,j)
矩阵最大值为"
max&
下标为:
x&
"
y
两条对角线元素之和为:
sum
'
将矩阵转置
Fori=1To3
Forj=0Toi-1
t=arr(i,j)
arr(i,j)=arr(j,i)
arr(j,i)=t
Printarr(i,j);
PrintvbCrLf
Dima(),i%,k%,x%,m%
a=Array(1,23,36,78,90)
m=UBound(a)
x=Val(InputBox("
请输入一个整数"
"
输入"
))
Fori=0Tom
Ifx<
a(i)ThenExitFor
ReDimPreservea(m+1)
Fork=mToiStep-1
a(k+1)=a(k)
a(i)=x
Fori=0Tom+1
Printa(i)
习题7参考答案
7.1单选题
1.B2.D3.D4.无5.A
6.D7.B8.B
7.2填空题
1.Exitsubexitfunction
2.函数过程名(实参)
Call函数过程名(实参)
3.过程名(实参)
Call过程名(实参)
4.传地址
传值
5.用来接收传送给过程的数据
6.mmodi=0
isWs=True
isWs(i)=True
7.ExitFor
b(j-1)=b(j)
UBound(a)或者n-1
7.3阅读程序题
1.(注意:
print‘-‘中的单引号应该改成双引号)
–
1
0
8
2.a=35,b=23
7.4程序设计题
PrivateFunctionisprime(mAsInteger)AsBoolean
Dimi%
isprime=True
Fori=2Tom-1
IfmModi=0Thenisprime=False
EndFunction
Dimn%,a%,b%
a=isprime(3)
Forn=5To1000Step2
b=isprime(n)
If(aAndb)ThenPrintn-2,n
a=b
Nextn
PrivateFunctionpower(x%,y%)
Dimj%,f%
f=1
Forj=1Toy
f=f*x
power=f
PrivateFunctionsum(n%,k%)
Dimi%,total%
total=total+power(i,k)
sum=total
Dimn%,k%,sAsSingle
n=Val(InputBox("
请输入正整数n:
k=Val(InputBox("
请输入正整数k:
s=sum(n,k)
Prints
3.
PrivateFunctionsum(m%)
Dimi%,s%
Fori=1Tom-1
IfmModi=0Thens=s+i
sum=s
Dimi%,j%,n%
Fori=1To1000
n=sum(i)
Ifn=iThen
Printi,n
Forj=i+1To1000
If(i=sum(j)Andj=n)ThenPrinti,j
PrivateSubf(m%)
Dima%
If(m\10=0)Then
a=mMod10
Printa
f(m\10)
Dimn%
请输入一个整数:
Callf(n)
PrivateFunctionhw(strAsString)AsBoolean
DimiAsInteger
hw=True
Fori=1ToLen(str)\2
IfMid(str,i,1)<
Mid(str,Len(str)+1-i,1)Then
hw=False
ExitFunction
DimstrAsString
str=InputBox("
请输入一个字符串:
If(hw(str))Then
Printstr&
是回文!
不是回文!
习题8参考答案
8.1思考题
略
8.2选择题
1
2
3
4
5
6
7
8
9
10
C
B
A
D
8.3程序设计题
习题9参考答案
9.1思考题
(略)
9.2单选题
1C2D3C4C5C6C7C8C
9.3填空题
1.下拉式菜单和弹出式菜单
2.Toolbar控件和ImageList控件
3.ButtonClick
4.MDIChild
5.1个
9.4程序设计题
‘Form1窗体事件代码
Picture1.Picture=LoadPicture("
d:
\bao9-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 教材 习题 参考答案 清华大学出版社