华工最新版VB习题答案.docx

上传人:b****7 文档编号:23466170 上传时间:2023-05-17 格式:DOCX 页数:62 大小:31.09KB
下载 相关 举报
华工最新版VB习题答案.docx_第1页
第1页 / 共62页
华工最新版VB习题答案.docx_第2页
第2页 / 共62页
华工最新版VB习题答案.docx_第3页
第3页 / 共62页
华工最新版VB习题答案.docx_第4页
第4页 / 共62页
华工最新版VB习题答案.docx_第5页
第5页 / 共62页
点击查看更多>>
下载资源
资源描述

华工最新版VB习题答案.docx

《华工最新版VB习题答案.docx》由会员分享,可在线阅读,更多相关《华工最新版VB习题答案.docx(62页珍藏版)》请在冰豆网上搜索。

华工最新版VB习题答案.docx

华工最新版VB习题答案

华工最新版VB习题答案

《VB.NET语言程序设计》习题答案

第1章概述

1.1填空题

1.答案:

低级语言、高级语言

2.答案:

编译、解释

3.答案:

编译、运行、逻辑

1.2问答题略

1.3编程题

1.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

WriteLine("欢迎使用VisualBasic!

")

EndSub

EndModule

2.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

Dimx,yAsDouble

Write("请输入的矩形的长:

")

x=ReadLine()

Write("请输入的矩形的宽:

")

y=ReadLine()

WriteLine("圆周长={0:

f}",2*x+2*y)'计算输出周长

WriteLine("圆面积={0:

f}",x*y)'计算输出面积

EndSub

EndModule

第2章基本数据类型与表达式

2.1填空题

1.答案:

关键字2.答案:

标识符

3.答案:

4、8、4、8、16

4.答案:

整、单精度浮点、货币

5.答案:

函数运算、算术运算、关系运算、逻辑运算

6.答案:

Round(1234.567,0)

7.答案:

Mid(“VisualBASIC6.0”,8,5)

8.答案:

Int((b-a+1)*Rnd+a)

2.2选择题

1.答案:

c

2.答案:

d

3.答案:

c

4.答案:

c

5.答案:

b

6.答案:

a

7.答案:

c

8.答案:

a

9.答案:

d

10.答案:

b

2.3下列变量名哪些是正确的,哪些是错误的?

答:

1.n正确。

2.3x错误。

变量名必须以字母为开始。

3.Abs错误。

不能和关键字同名。

4.85错误。

变量名必须以字母开始。

5.print_56正确6.名称正确。

7.ab#正确。

#是类型说明符。

8.MyName错误。

变量名内不能有空格字符。

9.“年龄”错误。

这是字符串常量。

10.学校$正确。

$是类型说明符。

2.4把下列数学表达式写成VB表达式。

答案:

1.1/(1+(1/(1+1/(x+y))))

2.x*(x*(x*(a*x+b)+c)+d)+e

3.Log(1+Abs((a+b)/(a-b))^10)

4.Sqrt(1+3.14159/2*Cos(48*3.14159/180))

5.1/Tan((1-x*x)/(1+x*x))或者Cos((1-x*x)/(1+x*x))/Sin((1-x*x)/(1+x*x))

6.Log10(a*a+a*b+b*b)

2.5写出下列函数的值。

答案:

1.-123462.12343.12.344.1234.575.100

6.27.Visual8.09.$$$

2.6写出下列表达式的值。

答案:

1.42.03.abc123abc4.True

5.True6.True7.False8.True

2.7用关系表达式或逻辑表达式表示下列条件。

答案:

1.iModj=02.n

3.1<=xAndx<104.x

5.Sqr((x-10)^2+(y-15)^2)<35

6.YearMod4=0AndyearMod400<>0OrYearMod400=0

2.8问答题

2.9阅读下列程序,写出执行结果

1.答案:

-3VisualBasicFalse0.75

x=12.34

2.答案:

3E81.000000E0031,000.00

x=1000,y=12.34,x*y=12340

2.10编程题

1.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

Dimx%,i%,j%,k%

Write("请输入x的值:

")

x=ReadLine()

i=x\100

j=(x-i*100)/10

k=x-i*100-j*10

WriteLine("{0}{1}{2}",k,j,i)'或WriteLine("{0}",100*k+10*j+i)

EndSub

EndModule

2.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

DimxAsSingle,yAsSingle,bAsBoolean

Write("请输入x的值:

")

x=ReadLine()

Write("请输入y的值:

")

y=ReadLine()

b=(-2<=x)And(x<=2)And(-2<=y)And(y<=2)

WriteLine("{0}",b)

EndSub

EndModule

第3章程序流程控制

3.1填空题

1.答案:

s=3.14159*r*r

3.答案:

IfiMod2=0Thenprintx

4.答案:

Ifx>0Thens1=s1+xElses2=s2+x

5.答案:

Ifx>0Theny=2*x+1ElseIfx=0Theny=0Elsey=2*x-1

6.答案:

Ifa=bThen

Print“aisequaltob”

End

7.答案:

IfAsc(ch)>=97AndAsc(ch)<=122Then

Print“Yes”

Else

Print“No”

EndIf

8.答案:

这些常数中的某一个

9.答案:

这个范围内的值

10.答案:

Is后的关系

11.答案:

循环体、循环条件、结束循环条件

12.答案:

DoWhile…Loop语句

13.答案:

For…Next

14.答案:

循环条件

15.答案:

ExitFor

3.2选择题

1.答案:

d

2.答案:

d

3.答案:

d

4.答案:

c

5.答案:

d

6.答案:

c

7.答案:

c

8.答案:

c

9.答案:

c

10.答案:

a、c

11.答案:

b

12.答案:

c

13.答案:

b

3.3问答题

3.4阅读下列程序,写出执行结果

1.

答案:

a=-1b=3c=2

S=2w=0t=0

2.

答案:

x=2y=4

x=8y=9

x=4y=8

x=15y=226

3.

答案:

t=945

4.

答案:

x=105y=384

5.

答案:

s=36

6.

答案:

10

20

21

30

31

32

7.

答案:

s=36

3.5编程题

1.解答

ImportsSystem.Console

ModuleModule1

SubMain()

Dimscore!

Write("请输入score的值:

")

score=ReadLine()

Ifscore>=85Then

WriteLine("Verygood!

")

ElseIfscore>=60Then

WriteLine("Good!

")

Else

WriteLine("Nogood!

")

EndIf

EndSub

EndModule

2.解答

ImportsSystem.Console

ImportsSystem.Math

ModuleModule1

SubMain()

Dima!

b!

c!

disc!

x1!

x2!

realpart!

imagpart!

Conste!

=0.000001

Write("请输入a的值:

"):

a=ReadLine()

Write("请输入b的值:

"):

b=ReadLine()

Write("请输入c的值:

"):

c=ReadLine()

IfAbs(a)<=eThen

WriteLine("方程不是一个二次方程!

")

Else

disc=b^2-4*a*c

IfAbs(disc)<=eThen

WriteLine("方程有两个相同的实根:

x1=x2={0}",-b/(2*a))

ElseIfdisc>0.000001Then

x1=(-b+Sqrt(disc))/(2*a)

x2=(-b-Sqrt(disc))/(2*a)

WriteLine("方程有两个实根:

x1={0}x2={1}",x1,x2)

ElseIfdisc

realpart=-b/(2*a):

imagpart=Sqrt(-disc)/(2*a)

WriteLine("方程有两个虚根:

")

WriteLine("x1={0}+{1}i",realpart,imagpart)

WriteLine("x1={0}-{1}i",realpart,imagpart)

EndIf

EndIf

EndSub

EndModule

3.解答

ImportsSystem.Console

ImportsSystem.Math

ModuleModule1

SubMain()

Dimx%,y%

Write("请输入x的值:

")

x=ReadLine()

Ifx>=1Andx<=5Then

SelectCasex

CaseIs<2

y=3*x-5

CaseIs<4

y=2*Cos(x)+1

CaseIs<=5

y=Sqrt(1+x*x)

EndSelect

Else

y=x*x-4*x+5

EndIf

WriteLine("x={0}y={1}",x,y)

EndSub

EndModule

4.解答

ImportsSystem.Console

ModuleModule1

SubMain()

Dimr!

f$

Constpi!

=3.14159265

Write("请输入圆的半径r:

"):

r=ReadLine()

Ifr>=0Then

Write("请输入运算标志C(计算周长),A(计算面积),B(两者都计算):

")

f=ReadLine()

f=UCase(f)

SelectCasef

Case"C"

WriteLine("半径r={0}y=圆周长={1}",r,2*r*pi)

Case"A"

WriteLine("半径r={0}y=圆面积={1}",r,r*r*pi)

Case"B"

WriteLine("半径r={0}y=圆周长={1}",r,2*r*pi)

WriteLine("半径r={0}y=圆面积={1}",r,r*r*pi)

CaseElse

WriteLine("输入的运算标志错!

")

EndSelect

Else

WriteLine("半径不能是负数!

")

EndIf

EndSub

EndModule

5.解答

ImportsSystem.Console

ModuleModule1

SubMain()

Dimn%,s&

n=0:

s=0

Whiles<=1000

n=n+1

s=s+n^2

EndWhile

WriteLine("满足1^2+2^2+…-+n^2>1000的最小n值为:

{0}",n)

EndSub

EndModule

6.解答

(1)用DoWhile…Loop语句

ImportsSystem.Console

ModuleModule1

SubMain()

Dima!

s!

Write("请输入a的值:

"):

a=ReadLine()

DoWhilea>=0

s=s+a

Write("请输入a的值:

"):

a=ReadLine()

Loop

WriteLine("输入的正实数之和为:

{0}",s)

EndSub

EndModule

(2)用DoUntil…Loop语句

ImportsSystem.Console

ModuleModule1

SubMain()

Dima!

s!

Write("请输入a的值:

"):

a=ReadLine()

DoUntila<0

s=s+a

Write("请输入a的值:

"):

a=ReadLine()

Loop

WriteLine("输入的正实数之和为:

{0}",s)

EndSub

EndModule

7.解答

ImportsSystem.Console

ImportsSystem.Math

ModuleModule1

SubMain()

Dimi&,s#,term#

i=1

s=0

Do

term=1/(i*i)

s=s+term

i=i+1

LoopWhileterm>=0.00000001

WriteLine("圆周率的近似值为:

{0}",Sqrt(6*s))

EndSub

EndModule

8.解答

ImportsSystem.Console

ImportsSystem.Math

ModuleModule1

SubMain()

Dimx0!

x1!

x1=0

Do

x0=x1

x1=x0-(x0^5-3*x0^2+2*x0+1)/(5*x0^4-6*x0+2)

LoopUntilAbs(x1-x0)<0.00001

WriteLine("方程的根为:

{0}",x1)

EndSub

EndModule

9.解答

ImportsSystem.Console

ModuleModule1

SubMain()

Dimi%,s!

sign%

sign=1:

s=0

Fori=1To100

s=s+sign*1/i

sign=-sign

Nexti

WriteLine("s的值为:

{0}",s)

EndSub

EndModule

10.解答

法1:

ImportsSystem.Console

ModuleModule1

SubMain()

Dimi%,a%,b%,c%

WriteLine("100--999之间的水仙花数为:

")

Fori=100To999

a=i\100

b=(i-a*100)\10

第4章复合型数据类型

4.1填空题

1.答案:

10,0,9

2.答案:

Dima(5,6)AsInteger

3.答案:

四舍五入

4.答案:

Read和ReadLine,Write和WriteLine

5.答案:

[Preserve]

6.答案:

数据成员

7.答案:

Add

8.答案:

枚举类型名.成员名

4.2选择题

1.答案:

c2.答案:

c3.答案:

d4.答案:

b5.答案:

d6.答案:

c7.答案:

b8.答案:

d9.答案:

d10.答案:

d

11.答案:

c

12.答案:

d13.答案:

a

4.3问答题

4.4阅读下列程序,写出执行结果

1.答案:

f(0)=1f

(1)=1f

(2)=2f(3)=3

f(4)=5f(5)=8f(6)=13f(7)=21

f(8)=34f(9)=55f(10)=89

2.答案:

s(0)=6s

(1)=5s

(2)=4s(3)=3s(4)=2s(5)=1

3.答案:

1

24

369

4.答案:

1  1  1  1  1

2  1  1  1  1

3  2  1  1  1

4  3  2  1  1

5  4  3  2  1

4.5编程题

1.解答:

ImportsSystem.Console

ImportsSystem.Math

ModuleModule1

SubMain()

Dimsum1!

sum2!

ave!

dev!

n%,i%

n=InputBox("请输入学生人数:

")

Dims!

(n)

Fori=1Ton

s(i)=InputBox("请输入第"&Str(i)&"个学生成绩:

")

Nexti

sum1=0:

sum2=0

Fori=1Ton

sum1=sum1+s(i)

Nexti

ave=sum1/n

Fori=1Ton

sum2=sum2+(s(i)-ave)^2

Nexti

dev=Sqrt(sum2/n)

WriteLine("平均成绩:

{0}",ave)

WriteLine("均方差:

{0}",dev)

EndSub

EndModule

2.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

Dimi%,num%,p%,a%(11)

Randomize()'随机数生成器初始化

Fori=1To10

a(i)=Int(Rnd()*100+1)

Nexti

WriteLine("插入前数组的元素值:

")

Fori=1To10'显示插入前数组的元素值

Write("{0}",a(i))

Nexti

WriteLine()

p=InputBox("请输入插入位置:

")

num=InputBox("请输入插入数据:

")

Fori=10TopStep-1

a(i+1)=a(i)

Nexti

a(p)=num

WriteLine("插入后数组的元素值:

")

Fori=1To11'显示插入后数组的元素值

Write("{0}",a(i))

Nexti

WriteLine()

EndSub

EndModule

3.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

Dima(20),i%,max%

Randomize()

Fori=1To20

a(i)=Int((90*Rnd()+10))

Nexti

WriteLine("产生的随机数为:

")

Fori=1To20

Write("a({0})={1}",i,a(i))

IfiMod4=0ThenWriteLine()

Nexti

WriteLine()

max=a

(1)

Fori=2To20

Ifa(i)>maxThenmax=a(i)

Nexti

WriteLine("最大值为:

{0}",max)

WriteLine("最大值所在数组元素的下标为:

")

Fori=1To20

Ifa(i)=maxThenWrite("{0}",i)

Nexti

WriteLine()

EndSub

EndModule

4.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

Dima()AsSingle={1,2,7,8},b()AsSingle={3,4,8,8,9,10,12,12},c%(11)

Dimi%,j%,k%

i=0:

j=0:

k=0

Whilei<4Andj<8

Ifa(i)>b(j)Then

c(k)=b(j):

k=k+1:

j=j+1'比较a和b中的元素,把较大的元素移到

Else'c中,直到其中一个数组搬空为止

c(k)=a(i):

k=k+1:

i=i+1

EndIf

EndWhile

Whilei<4

c(k)=a(i):

i=i+1:

k=k+1'把a中剩余的元素搬到c中

EndWhile

Whilej<8

c(k)=b(j):

j=j+1:

k=k+1'把b中剩余的元素搬到c中

EndWhile

WriteLine("合并后的升序数组C:

")

Fori=0To11

Write("{0}",c(i))

Nexti

WriteLine()

EndSub

EndModule

5.解答:

ImportsSystem.Console

ModuleModule1

SubMain()

Dimi%,j%,m%,n%,sum!

ave!

max!

min!

m=InputBox("请输入矩阵的行数:

")

n=InputBox("请输入矩阵的列数:

")

Dima!

(m,n)

WriteLine("输入的矩阵为:

")

Fori=1Tom

Forj=1Ton

a(i,j)=InputBox("输入第"&St

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

当前位置:首页 > 考试认证 > 交规考试

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

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