实验指导书部分参考答案Word文件下载.docx
《实验指导书部分参考答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《实验指导书部分参考答案Word文件下载.docx(11页珍藏版)》请在冰豆网上搜索。
![实验指导书部分参考答案Word文件下载.docx](https://file1.bdocx.com/fileroot1/2023-1/3/20d11e14-06ca-4e3c-a0e1-ca6367a582bf/20d11e14-06ca-4e3c-a0e1-ca6367a582bf1.gif)
法二:
Dimchar$
char=(InputBox("
selectcaseasc(char)
caseasc(“0”)toasc(“9”)
MsgBox"
caseasc(“A”)toasc(“Z”)
caseasc(“a)toasc(“z”)
Caseelse
您输入的字符是其它字母"
Endselect
4.2
法一:
DimaAsDouble,bAsDouble,cAsDouble,dAsDouble
a=Val(InputBox("
请输入a的数值"
数值A"
b=Val(InputBox("
请输入b的数值"
数值B"
c=Val(InputBox("
请输入c的数值"
数值C"
d=Val(InputBox("
请输入d的数值"
数值D"
Ifa>
bAnda>
cAnda>
dTheni=MsgBox("
a是最大值"
Ifb>
aAndb>
cAndb>
b是最大值"
Ifc>
aAndc>
bAndc>
c是最大值"
Ifd>
aAndd>
bAndd>
cTheni=MsgBox("
d是最大值"
DimaAsDouble,bAsDouble,cAsDouble,dAsDouble,max#
bThenmax=aelsemax=b
maxThenmax=c
Ifd>
maxThenmax=d
Print“四个数中的最大值是:
”;
max
4.3PrivateSubform1_Click()
Dima!
b!
c!
s!
p!
请输入第一个边长的长度"
请输入第二个边长的长度"
请输入第三个边长的长度"
Ifa<
b+cAndb<
a+cAndc<
a+bAnda>
0Andb>
0Andc>
0Then
p=(a+b+c)/2
s=Sqr(p*(p-a)*(p-b)*(p-c))
三角形的面积为:
&
s,0+64+0+0,"
您输入的边长可以构成三角"
Else
MsgBox("
您输入的数据无法正常构成三角形!
5+48+0+0,"
警告!
EndIf
4.4PrivateSubform1_Click()
DimxAsDouble,YAsDouble
x=Val(Text1.Text)‘或者x=val(inputbox(“请输入货物的价格”))
Ifx>
=10000Then
Y=x*0.05
ElseIfx>
=5000[Andx<
10000]Then
Y=x*0.03
ElseIf1000<
=x[Andx<
5000]Then
Y=x*0.02
ElseIfx<
1000Then
Y=0
Endif
你输入的价格”&
x&
“应该缴纳的税金为:
y
Endsub
4.5-4.7略
实验五:
5.1PrivateSubForm_Click()
Dimt#,n%,m%
m=Val(InputBox("
请输入m:
t=1
Forn=1Tom
t=t*n
Next
Print"
t="
;
t
5.2PrivateSubForm_Click()
Dimi%,sum#
i=1
sum=0
DoWhilesum<
=6000
sum=sum+i
i=i+1
Loop
Print“当i为”&
I&
“时,其累加和超过6000”
5.3PrivateSubForm_Click()
DimaAsInteger,bAsInteger,cAsInteger,xAsInteger
Forx=100To999
‘把每个三位数X的个位、十位、百位数字拆开
a=Int(x/100)
b=Int((x-100*a)/10)
c=x-100*a-10*b
Ifx=a^3+b^3+c^3ThenPrintx&
“是水仙花数”
Nextx
5.4
DimnAsInteger
Forn=100To200
IfnMod3=2AndnMod5=3AndnMod7=2ThenPrintn
Nextn
5.5略
5.6略
5.7
Dims%,i%,n%,sum#
n=Val(InputBox("
n="
))或者n=Val(Text1.Text)
sum=0
Forj=1Ton
s=0
Fori=1Toj
s=s+i
Nexti
sum=sum+s
Nextj
Printsum
sum=sum+i
NextiNextj
5.8PrivateSubForm_Click()
Dimi%,j%,n%
Cls
n=InputBox("
请输入行数:
Fori=1Ton
PrintTab(20);
Forj=1Toi
*"
Print
Nexti
5.9法一:
Dimi%
Fori=1To10
PrintSpace(i+15)+String(21-2*i,Trim(Str(10-i)))
Dimi%,j%,k%
Fori=9To0step-1
‘输出每一行行首的空格
Fork=1to15-i
Print“”;
‘一次输出一个空格,每行共输出15-i个
Nextk
‘输出每一行上的数字
Forj=1to2*i+1
Printtrim(str(i);
‘一次输出一个数字,共输出2*i+1个
Nextj
print‘换行
实验六:
6.1
Dima(1To10)AsInteger,max%,min%,aver%,i%
max=20‘假设最大值是20
min=50‘假设最小值是50
a(i)=Int(Rnd*31+20)
Printa(i);
‘每得到一个数组元素就输出一个
Ifmax<
a(i)Thenmax=a(i)
Ifmin>
a(i)Thenmin=a(i)
aver=aver+a(i)‘求出10个数组元素的总和
Next
x=x/10‘求得10个数的平均值
Print'
换行
Printmax;
min;
aver
6.2PrivateSubForm_Click()
'
准备数据
Dima(1To10)AsInteger,i%,j%,f%
Print"
排序前数据:
a(i)=Int(Rnd*101)
数据输出不换行
Next
Print'
Fori=1To10-1
f=0'
没有数据交换发生
Forj=1To10-i
Ifa(j)>
a(j+1)Then
t=a(j)
a(j)=a(j+1)
a(j+1)=t
f=1'
有数据交换发生
Iff=0ThenExitFor
排序后数据:
6.3略
6.4
Dima%(1To3,1To3)
声明一个3X3的矩阵
输入矩阵A的六个元素,并输出为矩阵样式
转置前矩阵"
Fori=1To2
Forj=1To3
a(i,j)=Val(InputBox("
请输入第"
Str(i)&
"
行、第"
Str(j)&
列的元素"
Printa(i,j);
Print
矩阵转置,要求两个下标都要从1变到3
Fori=1To3
Ifi<
jThen
t=a(i,j)
a(i,j)=a(j,i)
a(j,i)=t
输出转置后的举证,只访问矩数组的前两列,形成矩阵B
转置后矩阵"
Forj=1To2
Nexti
6.5
Dima(1To3,1To4)AsInteger,max%,hangd%,lied%,min%,hangx%,liex%
声明一个3X4的矩阵
输入矩阵A的元素,并输出为矩阵样式
矩阵"
Forj=1To4
查找最值及所在行列号
先假设第一个元素即是最大值
max=a(1,1)
hangd=1
lied=1
先假设第一个元素也是最小值
min=a(1,1)
hangx=1
liex=1
用矩阵中剩下的元素跟最值做比较
Ifa(i,j)>
maxThen
max=a(i,j)
hangd=i
lied=j
Ifa(i,j)<
minThen
min=a(i,j)
hangx=i
liex=j
矩阵中最大值是第"
Str(hangd)&
Str(lied)&
max
矩阵中最小值是第"
Str(hangx)&
Str(liex)&
min
6.6参考课本例题P109页例6.3
试验八
8.4
Dimx%'
记忆密码尝试的次数,
'
变量声明在通用过程里,本窗体的所有过程都能访问
x变量在通用过程里声明,只会被初始化一次(即dim语句给x赋一次0)
Constzqmm="
123456"
假设正确密码为“123456”
PrivateSubcommand1_Click()
Dimmm$
Ifx<
3Then
mm=Text1.Text
Ifmm=zqmmThen
恭喜你,密码正确"
如果是应用程序,就该进入下级操作界面
Else
x=x+1
密码错误,您还有"
3-x&
次机会"
Text1.Text="
Text1.SetFocus
EndIf
PrivateSubcommand2_Click()
End