实验指导书部分参考答案.docx

上传人:b****6 文档编号:6159029 上传时间:2023-01-04 格式:DOCX 页数:11 大小:17.44KB
下载 相关 举报
实验指导书部分参考答案.docx_第1页
第1页 / 共11页
实验指导书部分参考答案.docx_第2页
第2页 / 共11页
实验指导书部分参考答案.docx_第3页
第3页 / 共11页
实验指导书部分参考答案.docx_第4页
第4页 / 共11页
实验指导书部分参考答案.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

实验指导书部分参考答案.docx

《实验指导书部分参考答案.docx》由会员分享,可在线阅读,更多相关《实验指导书部分参考答案.docx(11页珍藏版)》请在冰豆网上搜索。

实验指导书部分参考答案.docx

实验指导书部分参考答案

实验四:

4.1法一:

PrivateSubForm_Click()

X%=Asc(InputBox("请输入你要查询的一个字符","单个字符输入",""))

DimmAsSingle,nAsSingle,jAsSingle,kAsSingle,lAsSingle,hAsSingle

m=Asc("0")

n=Asc("9")

j=Asc("a")

k=Asc("z")

l=Asc("A")

h=Asc("Z")

Ifm<=xAndx<=nTheni=MsgBox("您输入的字符是数字")

Ifj<=xAndx<=kTheni=MsgBox("您输入的字符是小写字母")

Ifl<=xAndx<=hTheni=MsgBox("您输入的字符是大写字母")

EndSub

法二:

PrivateSubForm_Click()

Dimchar$

char=(InputBox("请输入你要查询的一个字符","单个字符输入",""))

selectcaseasc(char)

caseasc(“0”)toasc(“9”)

MsgBox"您输入的字符是数字"

caseasc(“A”)toasc(“Z”)

MsgBox"您输入的字符是大写字母"

caseasc(“a)toasc(“z”)

MsgBox"您输入的字符是小写字母"

Caseelse

MsgBox"您输入的字符是其它字母"

Endselect

EndSub

4.2

法一:

PrivateSubForm_Click()

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>dTheni=MsgBox("b是最大值")

Ifc>aAndc>bAndc>dTheni=MsgBox("c是最大值")

Ifd>aAndd>bAndd>cTheni=MsgBox("d是最大值")

EndSub

法二:

PrivateSubForm_Click()

DimaAsDouble,bAsDouble,cAsDouble,dAsDouble,max#

a=Val(InputBox("请输入a的数值","数值A",""))

b=Val(InputBox("请输入b的数值","数值B",""))

c=Val(InputBox("请输入c的数值","数值C",""))

d=Val(InputBox("请输入d的数值","数值D",""))

Ifa>bThenmax=aelsemax=b

Ifc>maxThenmax=c

Ifd>maxThenmax=d

Print“四个数中的最大值是:

”;max

EndSub

4.3PrivateSubform1_Click()

Dima!

b!

c!

s!

p!

a=Val(InputBox("请输入第一个边长的长度"))

b=Val(InputBox("请输入第二个边长的长度"))

c=Val(InputBox("请输入第三个边长的长度"))

Ifa0Andb>0Andc>0Then

p=(a+b+c)/2

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

MsgBox"三角形的面积为:

"&s,0+64+0+0,"您输入的边长可以构成三角"Else

MsgBox("您输入的数据无法正常构成三角形!

",5+48+0+0,"警告!

"

EndIf

EndSub

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

MsgBox"你输入的价格”&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

EndSub

5.2PrivateSubForm_Click()

Dimi%,sum#

i=1

sum=0

DoWhilesum<=6000

sum=sum+i

i=i+1

Loop

Print“当i为”&I&“时,其累加和超过6000”

EndSub

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

EndSub

5.4

PrivateSubForm_Click()

DimnAsInteger

Forn=100To200

IfnMod3=2AndnMod5=3AndnMod7=2ThenPrintn

Nextn

EndSub

5.5略

5.6略

5.7

法一:

PrivateSubForm_Click()

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

EndSub

法二:

PrivateSubForm_Click()

Dims%,i%,n%,sum#

n=Val(InputBox("n="))或者n=Val(Text1.Text)

sum=0

Forj=1Ton

Fori=1Toj

sum=sum+i

NextiNextj

Printsum

EndSub

5.8PrivateSubForm_Click()

Dimi%,j%,n%

Cls

n=InputBox("请输入行数:

")

Fori=1Ton

PrintTab(20);

Forj=1Toi

Print"*";

Nextj

Print

Nexti

EndSub

5.9法一:

PrivateSubForm_Click()

Dimi%

Fori=1To10

PrintSpace(i+15)+String(21-2*i,Trim(Str(10-i)))

Nexti

EndSub

法二:

PrivateSubForm_Click()

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‘换行

Nexti

EndSub

实验六:

6.1

PrivateSubForm_Click()

Dima(1To10)AsInteger,max%,min%,aver%,i%

max=20‘假设最大值是20

min=50‘假设最小值是50

Fori=1To10

a(i)=Int(Rnd*31+20)

Printa(i);‘每得到一个数组元素就输出一个

Ifmax

Ifmin>a(i)Thenmin=a(i)

aver=aver+a(i)‘求出10个数组元素的总和

Next

x=x/10‘求得10个数的平均值

Print'换行

Printmax;min;aver

EndSub

6.2PrivateSubForm_Click()

'准备数据

Dima(1To10)AsInteger,i%,j%,f%

Print"排序前数据:

"

Fori=1To10

a(i)=Int(Rnd*101)

Printa(i);'数据输出不换行

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'有数据交换发生

EndIf

Next

Iff=0ThenExitFor

Next

Print"排序后数据:

"

Fori=1To10

Printa(i);

Next

EndSub

6.3略

6.4

PrivateSubForm_Click()

Dima%(1To3,1To3)

'声明一个3X3的矩阵

'输入矩阵A的六个元素,并输出为矩阵样式

Print"转置前矩阵"

Fori=1To2

Forj=1To3

a(i,j)=Val(InputBox("请输入第"&Str(i)&"行、第"&Str(j)&"列的元素"))

Printa(i,j);

Nextj

Print

Nexti

'矩阵转置,要求两个下标都要从1变到3

Fori=1To3

Forj=1To3

Ifi

t=a(i,j)

a(i,j)=a(j,i)

a(j,i)=t

EndIf

Nextj

Nexti

'输出转置后的举证,只访问矩数组的前两列,形成矩阵B

Print"转置后矩阵"

Fori=1To3

Forj=1To2

Printa(i,j);

Nextj

Print

Nexti

EndSub

6.5

PrivateSubForm_Click()

Dima(1To3,1To4)AsInteger,max%,hangd%,lied%,min%,hangx%,liex%

'声明一个3X4的矩阵

'输入矩阵A的元素,并输出为矩阵样式

Print"矩阵"

Fori=1To3

Forj=1To4

a(i,j)=Val(InputBox("请输入第"&Str(i)&"行、第"&Str(j)&"列的元素"))

Printa(i,j);

Nextj

Print

Nexti

'查找最值及所在行列号

'先假设第一个元素即是最大值

max=a(1,1)

hangd=1

lied=1

'先假设第一个元素也是最小值

min=a(1,1)

hangx=1

liex=1

'用矩阵中剩下的元素跟最值做比较

Fori=1To3

Forj=1To4

Ifa(i,j)>maxThen

max=a(i,j)

hangd=i

lied=j

EndIf

Ifa(i,j)

min=a(i,j)

hangx=i

liex=j

EndIf

Nextj

Nexti

Print"矩阵中最大值是第"&Str(hangd)&"行、第"&Str(lied)&"列的元素"&max

Print"矩阵中最小值是第"&Str(hangx)&"行、第"&Str(liex)&"列的元素"&min

EndSub

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

MsgBox"恭喜你,密码正确"

'如果是应用程序,就该进入下级操作界面

Else

x=x+1

MsgBox"密码错误,您还有"&3-x&"次机会"

Text1.Text=""

Text1.SetFocus

EndIf

EndIf

EndSub

PrivateSubcommand2_Click()

End

EndSub

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

当前位置:首页 > 自然科学

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

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