vb习题参考答案分析Word格式文档下载.docx

上传人:b****7 文档编号:21863196 上传时间:2023-02-01 格式:DOCX 页数:27 大小:26.79KB
下载 相关 举报
vb习题参考答案分析Word格式文档下载.docx_第1页
第1页 / 共27页
vb习题参考答案分析Word格式文档下载.docx_第2页
第2页 / 共27页
vb习题参考答案分析Word格式文档下载.docx_第3页
第3页 / 共27页
vb习题参考答案分析Word格式文档下载.docx_第4页
第4页 / 共27页
vb习题参考答案分析Word格式文档下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

vb习题参考答案分析Word格式文档下载.docx

《vb习题参考答案分析Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《vb习题参考答案分析Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。

vb习题参考答案分析Word格式文档下载.docx

(3)pmodq=0(4)x<

-5orx>

-2andx<

2orx>

(5)x<

zandy>

zorx>

zandy<

z(6)a<

bandamod2=0

8、写出下列函数的值:

(1)-4

(2)换行符(3)–3(4)-1(5)hello

(6)ello(7)16(8)“-459.65”(9)5

1.整型、长整型、双精度型、双精度型

2.(Xmod10)*10+X\10。

3.sin(1/4*3.14)+sqr(x+2*exp(y))/abs(x-y)。

4.(a+b)/(c*d-sqr(1-a^2))。

5.xmod5=0orxmod9=0。

6.False。

7.-3、2、-2、2。

8.CDEF

9.x>

0andy>

0orx<

0andy<

0或x*y>

0。

10.s>

=”A”ands<

=”Z”ors>

=”a”ands<

=”z”。

四、编程题

1、

PrivateSubForm_Click()

Dimx%,Ten%,hundred%

x=Val(Text1.Text)

Ten=(x\10)Mod10

hundred=x\100

Print"

百位数是:

"

&

hundred

十位数是:

Ten

EndSub

DimcharAsString*1

Form1.CurrentX=Rnd*Form1.ScaleWidth

Form1.CurrentY=Rnd*Form1.ScaleHeight

char=Chr(Int(Rnd*16)+65)

Printchar

第4章习题参考答案

三、程序阅读

写出下列各段程序执行后的输出结果。

1.78

5786

357864

13578642

2.w=4、w=13、w=135、w=31

3.此题有点错误,修改如下:

是将语句“Ifk<

Asc("

A"

)Thenk=k+26”改为:

Ifk<

)Ork>

Z"

)Andk<

a"

)Thenk=k+26

改后的答案:

xyza12uvw&

4.A

BBB

CCCCC

DDDDDDD

EEEEEEEEE

5.此题的“IFKeyAsci=13Then”改为“IFKeyAscii=13Then”

答案是:

129

四、程序填空题

1.

(1)Sing=-1

(2)Fori=2to19

(3)Sing=-Sing

2.

(1)Len(oldsen)

(2)Mid(oldsen,i,1)

(3)Ucase(char)

(4)char

3.

(1)Len(str1)

(2)Length-1

(3)Mid(str1,i,2)

(4)Sum=0

4.

(1)Trim(Str(i))

(2)Trim(Str(i*i))

(3)Right(x2,Len(x1))=x1

5.

(1)last_one=last_two

(2)last_two=this_one

(3)i=i+1

(4)i-1

五、编程题

1.

DimR1AsDouble,R2AsDouble'

R1,R2表示两电阻值

DimRpAsDouble,RsAsDouble

R1=Val(InputBox("

输入电阻R1=?

"

))

R2=Val(InputBox("

输入电阻R2=?

Rp=R1*R2/(R1+R2)

Rs=R1+R2

Rp=Fix(Rp*1000+0.5)/1000'

保留小数点后3位

Rs=Fix(Rs*1000+0.5)/1000'

MsgBox"

并联电阻是:

Rp&

vbCrLf&

串联电阻是:

Rs

2.

DimNAsLong

N=Val(InputBox("

请输入年份"

"

提示框"

If(NMod400=0)Or(NMod4=0AndNMod100<

>

0)Then'

判断条件

PrintN&

年是闰年"

Else

年不是闰年"

EndIf

Dima!

b!

c!

s!

x!

a=Val(InputBox("

EnterA=?

b=Val(InputBox("

EnterB=?

c=Val(InputBox("

EnterC=?

Ifa+b>

cAndb+c>

aAnda+c>

bThen'

如果能构成三角形

x=(a+b+c)/2

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

S="

;

s

数据有错,不能构成三角形"

4.(此题不适合使用Select语句)

PrivateSubCommand1_Click()

DimxAsDouble,fxAsDouble

x=Val(InputBox("

输入x=?

Ifx<

0Andx<

-3Then

fx=x*x+x-6

ElseIfx>

=0Andx<

10Andx<

2Andx<

3Then

fx=x*x-5*x+6

fx=x*x-x-1

x="

x;

f("

x&

)="

fx

5.

DimiAsInteger

DimsAsLong,tAsLong

t=1

Fori=1To10

t=t*i

s=s+t

Nexti

S="

6.

Dimi%,s!

n!

t!

f%

i=1'

项数

s=0'

累加和

n=1'

阶乘

t=1'

通项

f=1'

系数

DoWhilet>

0.000001

s=s+f*t

i=i+1

n=n*i

t=1/n

f=-f'

表示符号

Loop

7.

'

方法一

DimiAsInteger

DimHundredAsInteger,TenAsInteger,OneAsInteger'

定义百位,十位,个位数

Fori=100To999

Hundred=i\100'

求百位数

Ten=(i\10)-Hundred*10'

求十位数

One=iMod10'

求个位数

Ifi=Hundred^3+Ten^3+One^3Then'

判断是否为素数

Printi&

是水仙花数"

方法二

ForHundred=1To9'

百位数

ForTen=0To9'

十位数

ForOne=0To9

i=Hundred*100+Ten*10+One

NextOne

NextTen

NextHundred

8.

DimaAsDouble,x0AsDouble,x1AsDouble

a=Val(InputBox(“输入a=?

”)

x0=a'

初值

x1=2/3*x0+a/(3*x0*x0)'

第一次迭代后的值

DoWhileAbs(x1-x0)>

0.000001'

控制精度

x0=x1'

迭代

x1=2/3*x0+a/(3*x0*x0)

Loop

Print“立方根:

”;

x1

第5章习题参考答案

三、程序填空

1.Preservea(n+1)a(i+1)=a(i)a(i+1)=mn+1或Ubound(a)

2.Print

K-1

t=a(k,j):

a(k,j)=a(j,k):

a(j,k)=t

3.Rnd*100

P=10

P=J

P=0

四、编写程序

1.

DimA()AsInteger,NAsInteger

DimiAsInteger,MAsInteger,tAsInteger,kAsInteger

请输入数组的大小N=?

M=Val(InputBox("

请输入移位次数M=?

))'

输入循环次数的大小

IfN<

=0ThenExitSub

ReDimA(N-1)

原始数组值"

Fori=0ToN-1'

给数组赋值

A(i)=Int(Rnd*100)

PrintA(i);

Print

移位

Fori=1ToM'

循环体完成右移一位,循环完成右移j位

t=A(N-1)

Fork=N-1To1Step-1'

循环右移

A(k)=A(k-1)

Nextk

A(0)=t

打印右移后的数组值

循环右移"

M&

位后的数组值"

Fori=0ToN-1

2.

ConstNM=100

Dima(1ToNM)AsSingle,b(1ToNM)AsInteger,maxAsInteger

DimiAsInteger,jAsInteger,kAsInteger,tAsInteger

Fori=1ToNM'

输入100个数值

a(i)=Val(InputBox("

请输入a("

i&

)的值"

IfInt(a(i))=a(i)Then'

判断是否为整数

k=k+1'

整数个数加1

b(k)=a(i)'

将这个整数存放到数组B

'

选择排择

Fori=1Tok-1

max=i

Forj=i+1Tok

Ifb(max)<

b(j)Thenmax=j

Nextj

Ifmax<

iThen

t=b(max):

b(max)=b(i):

b(i)=t

打印输出

Fori=1Tok

Printb(i);

IfiMod5=0ThenPrint

3.

Dima()AsInteger

Dimn%,i%,j%

n=Val(InputBox("

输入一个整数n=?

ReDima(n)

Form1.Cls

Randomize

产生的30个随机整数:

Fori=1Ton

a(i)=Int(Rnd*21)-10

Printa(i);

IfiMod10=0ThenPrint

删除数组的相同数据

j=2

DoWhilej<

n

Fori=1Toj-1'

查找相同的元素

Ifa(j)=a(i)ThenExitFor

Ifi<

jThen'

如果第i个数与前面的数据相同,删除第i个元素

Fori=jTon-1

a(i)=a(i+1)

n=n-1

ReDimPreservea(n)

j=j+1

删除后的数据:

4.

Dima(1To50)AsInteger,i%,j%,t%,p%,n%,x%

n=0'

已经产生的元素个数

DoWhilen<

50

x=Int(Rnd*90)+10'

产生10~100之间的随机整数

Ifx=a(i)ThenExitFor

Ifi>

nThen

n=n+1

a(n)=x

Fori=1To49'

使用选择法排序

p=i

Forj=i+1To50

Ifa(p)>

a(j)Thenp=j

t=a(p):

a(p)=a(i):

a(i)=t

Fori=1To50'

习题与思考题

二、判断题

1.nsp=TruemModi=0p1Andp2=nsp(i)或=p2

2.

(1)number(i,7)

(2)(intn,intm)

(3)number=number*10+m

五、程序阅读

1.a=9b=4

2.

(1)36

25

16

0

(2)0

3.6

4.144

五、编写程序

PublicFunctionfact(xAsInteger)AsSingle'

求x!

DimfAsSingle,iAsInteger

f=1

Fori=1Tox

f=f*i'

累积

fact=f

EndFunction

Dimn%,m%,y!

Do

m%=Val(InputBox("

m="

n%=Val(InputBox("

n="

LoopUntilm>

=nAndn>

=0

y=fact(m)/(fact(n)*fact(m-n))

Printy

2.OptionExplicit

Dima()AsInteger'

定义窗体级动态数组

插入过程Sort

PrivateSubInsertfun(a%(),y%)'

y为要插入的数

DimjAsInteger,iAsInteger,nAsInteger

j=1

n=UBound(a)'

求数组上界

DoWhiley>

a(j)Andj<

n'

查找插入的位置

Fori%=n-1TojStep-1'

空出要插入的位置

a(i+1)=a(i)

a(j)=y'

插入

PrivateSubForm_Load()

PrivateSubTxtinput_KeyPress(KeyAsciiAsInteger)

DimxAsInteger,iAsInteger

IfKeyAscii=13Then

StaticnAsInteger'

定义静态变量

x=Val(Txtinput.Text)

Picdata.Printx

ReDimPreservea(n)'

插入后重定义数组的大小

Insertfuna,x'

调用插入过程

Fori=1ToUBound(a)

Picresult.Printa(i);

Picresult.Print

Txtinput.Text="

3.'

判断是否为回文录函数

PrivateFunctionJudge(strAsString)AsBoolean

Judge=True'

假设为回文

Fori=1ToLen(str)\2'

依次判断对应位置的两个字符,只要有一组不等即不是回文

IfMid(str,i,1)<

Mid(str,Len(str)+1-i,1)Then

Judge=False

ExitFunction

Dimn%,x!

n=Val(InputBox("

x="

Printfe(n,x)'

调用求值函数过程

求值函数过程

PublicFunctionfe(n%,x!

)AsSingle

DimiAsInteger,tAsSingle

fe=1:

t=t*x/i'

t为通项

fe=fe+t

第7章习题参考答案

12

13

14

15

1.___Multiline_______

2.____Value______

3.___Selected______、____Li

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

当前位置:首页 > 经管营销 > 销售营销

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

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