《VBNET程序设计》作业二.docx

上传人:b****3 文档编号:24815880 上传时间:2023-06-01 格式:DOCX 页数:51 大小:71.08KB
下载 相关 举报
《VBNET程序设计》作业二.docx_第1页
第1页 / 共51页
《VBNET程序设计》作业二.docx_第2页
第2页 / 共51页
《VBNET程序设计》作业二.docx_第3页
第3页 / 共51页
《VBNET程序设计》作业二.docx_第4页
第4页 / 共51页
《VBNET程序设计》作业二.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

《VBNET程序设计》作业二.docx

《《VBNET程序设计》作业二.docx》由会员分享,可在线阅读,更多相关《《VBNET程序设计》作业二.docx(51页珍藏版)》请在冰豆网上搜索。

《VBNET程序设计》作业二.docx

《VBNET程序设计》作业二

 

《VB.NET程序设计》作业二

 

一、单项选择题

 

1.在

 

VisualStudio.NET

 

的集成开发环境中,下面不属于该环境编程语言的是

 

A.VB

B.C++

C.Pascal

D.J#

2.在

VB.NET

中,在窗体上显示控件的文本,用

属性设置。

A.Text

B.Name

C.Caption

D.Image

3.对于窗体,可改变窗体的边框性质的属性是

A.MaxButton

B.FormBorderStyle

C.Name

D.Left

4.若要使标签控件显示时不覆盖窗体的背景图案,要对

属性进行设置。

A.BackColor

B.BorderStyle

C.ForeColor

D.BackStyle

5.当运行程序时,系统自动执行启动窗体的

事件过程。

A.Load

B.Click

C.Unload

D.GotFocus

6.当文本框的

ScrollBars

属性设置了非

None

值,却没有效果,原因是

A.文本框中没有内容

B.文本框的

MultiLine

属性为

False

C.文本框的

MultiLine

属性为

True

D.文本框的

Locked

属性为

True

7.要判断在文本框中是否按了

Enter

键,应在文本框的

事件中判断。

A.Change

B.KeyDown

C.Click

D.KeyPress

8.在

VB.NET

集成环境中创建

VB.NET

应用程序时,除了工具箱窗口、窗体窗口、属性窗

口外,必不可少的窗口是

A.窗体布局窗口

B.立即窗口

C.代码窗口

D.监视窗口

9.当创建一个项目名为“引例”

的项目时,该项目的所有代码文件将保存在

文件夹下。

A.MyDocuments

B.VB.NET

C.引例

D.Windows

10.将调试通过后生成的

.exe可执行文件到其他机器上不能运行的主要原因是

A.运行的机器上无

VB.NET

系统

B.缺少

.frm

窗体文件

C.该可执行文件有病毒

11.对初学者而言,调试程序方便、有效的手段是

A.在可疑的代码处设置断点点,逐语句跟踪

C.通过“立即”窗口显示变量的值

12.当需要上下文帮助时,选择要帮助的“难题”

D.以上原因都不对

B.查看资料

D.找老师问原因

,然后按键,就可出现

 

MSDN

 

窗口

及显示所需“难题”的帮助信息。

A.HelpB.F10C.EscD.F1

 

13.__________属性用来设置窗体的背景图案。

A.BackgroundImage

B.GroundImage

C.Image

D.Icon

14.能够获得一个文本框中被选取文本的内容的属性是

__________。

A.Text

B.SelectionLength

C.SelectedText

D.

SelectionStart

15.关于数组的声明,正确的是

__________。

A.Dima(5)AsInteger={1,2,3,4,5,6}C.Dima()AsInteger={1,2,3,4,5,6}

B.Dima(1,6)AsInteger={1,2,3,4,5,6}D.Dima(1to6)AsInteger={1,2,3,4,5,6}

16.如下数组声明语句中正确的是

__________。

A.Dima[3,4]

C.Dima{3,4}

AsInteger

AsInteger

B.Dima(3,4)

D.Dima(34)

AsInteger

AsInteger

17.数组声明语句

A.12

Dima(4,0To2)B.15

中的数组a包含了

C.16

_________个数组元素。

D.20

18.下面语句说明不合法的是

_________。

A.Functionf1%(ByValn%)

C.Subs1(ByValn%(10))

B.Subs1(ByValnAsInteger)

D.Functionf1%()

19.下列子过程最合理的是

A.Subf1(ByValC.Functionf1%

n%())(ByRef

 

f1%)

B.Subf1(ByRefn%)AsIntegerD.Functionf1(ByValn%)

20.下列过程的定义正确的是

__________。

A.PublicFunctiona(ByValb!

)AsDouble

C.PublicFunctiona(ByRefa!

)AsDouble

D.PublicFunctiona(ByRefb!

(5))AsDouble

B.PublicSuba(ByValb!

)AsDouble

21.设有如下说明

 

PublicSubF1(ByRefn%)

 

n=3*n+4

 

EedSub

SubButton1_Click()HandlesButton1.Click

 

Dimn%,m%

 

n=3

m=4

 

‘调用F1的语句

 

EedSub

则在Button1_Click

事件中有效的调用语句是

A.F1(n+m)

B.F1(m)

C.F1(5)

D.F1(m,n)

22.如下程序输出的结果是

 

DimiAsInteger

 

Dima()AsInteger={1,2,3,4,5,6,7}

 

Fori=0ToUBound(a)

 

a(i)=a(i)*a(i)

 

Nexti

 

MsgBox(a(i))

 

A.49

 

B.0

 

C.不确定

 

D.程序出错

23.如下程序输出的结果是

 

PrivateSubButton1_Click(

 

⋯⋯

 

)HandlesButton1.Click

Dimi%,j%

 

Dima()AsInteger={0,1,2,3,4,5,6,7,8,9},b(3,3)AsInteger

 

Label1.Text=""

 

Fori=1To3

 

Label1.Text&=Space(i*3)

 

Forj=iTo3

 

b(i,j)=a(i*j)

 

Label1.Text&=Space(6-Len(b(i,j)))&b(i,j)

 

Next

 

Label1.Text&=vbCrLf

 

Next

 

EndSub

 

A.123

B.1

C.147

D.123

4

5

6

4

5

2

4

6

4

6

7

8

9

7

8

9

3

6

9

9

 

24.在过程中定义的变量,若希望在离开该过程后还能保存过程中局部变量的值,则应使用

关键字在过程中定义过程级变量。

A.DimB.PrivateC.PublicD.Static

25.如下程序输出的结果是。

 

PrivateSubButton1_Click(⋯⋯)HandlesButton1.Click

 

MsgBox(p1(3.0,7))

 

EndSub

 

PublicFunctionp1!

(ByValx!

ByValn%)

 

Ifn=0Then

 

p1=1

 

Else

 

IfnMod2=1Then

 

p1=x*p1(x,n\2)

 

Else

 

p1=p1(x,n\2)\x

 

EndIf

 

EndIf

 

EndFunction

 

A.18B.7C.14D.27

 

26.如下程序,运行后各变量的值依次为。

 

PublicSubProc(ByRefa%())

 

Statici%

 

Do

 

a(i)=a(i)+a(i+1)

 

i=i+1

 

LoopWhilei<2

 

EndSub

 

SubButton_Click(⋯⋯)HandlesButton1.click

 

Dimm%,i%,x%(10)

 

Fori=0to4:

x(i)=i+1:

Nexti

 

Fori=1to2:

Callproc(x):

Nexti

 

Fori=0to4:

MsgBox(x(i)):

Nexti

 

Endsub

 

A34756B35745C23445D45678

 

二.填空题

 

1.当进入VB.NET集成环境,发现没有显示“工具箱”窗口,应选择菜单的选

 

项,使“工具箱”窗口显示,并最好将其窗口的属性设置为。

2.对象的属性是指;对象的方法是指。

3.当对命令按钮的Image属性装入.bmp图形文件后,按钮上并没有显示所需的图形,原因

是对属性设置为。

 

4.若已建立了Form1、Form2两个窗体,默认启动窗体为Form1。

通过菜单

的的选项卡,可将启动对象设置为Form2。

 

5.对于正在使用的数组A,要再增加一个单元,但要保留原数组各元素的值,则应使用:

 

ReDim______________A(Ubound(A)+1)语句。

6..在模块的开头通过ImportsSystem.__________语句限定,x的平方根可以写为sqrt(x)。

7.在过程体中,用__________关键字声明的局部(过程级)变量,其值可以保留至下次过

程被调用。

 

三.上机题

 

1.输入一个数到文本框,然后对其求平方根,结果通过信息框输出。

2.调试下列程序,实现对数组s由大到小排序;并将排序结果显示在标签中。

 

PrivateSubButton1_Click(,)HandlesButton1.Click

Dims()AsInteger

 

Dimk%,j%,n%,t%

 

s=Array(77,67,89,65,85,53,94,74,79,90)

n=UBound(s)

 

Forj=0Ton-1

Fork=____

(1)_____Ton

Ifs(j)

t=s(j)

 

s(j)=

(2)

___(3)____=t

EndIf

 

Nextk

Nextj

 

Label1.Text=""

Forj=0Ton

 

Label1.Text&=(4)&""

Nextj

 

EndSub

 

完整程序:

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

 

HandlesButton1.Click

 

Dims()AsInteger={77,67,89,65,85,53,94,74,79,90}'删除了原题中的s=Array(77,67,89,65,85,53,94,74,79,90)

Dimk%,j%,n%,t%

n=UBound(s)

 

'显示原数据

Label1.Text="待排序数组的元素是:

"&vbCrLf

Forj=0Ton

Label1.Text&=s(j)&""

 

Next

 

Label1.Text&=vbCrLf&vbCrLf

'排序

Forj=0Ton-1

Fork=j+1Ton

 

Ifs(j)

 

t=s(j)

 

s(j)=s(k)

s(k)=t

 

EndIf

 

Nextk

Nextj

 

'结果

Label1.Text&="排序后的元素为:

"&vbCrLf

Forj=0Ton

Label1.Text&=s(j)&""

 

Nextj

EndSub

 

3.调试下列程序,实现对数组a中的10个整数用冒泡法按升序排列,并将排序结果显

示在Label1标签框中。

 

PrivateSubButton1_Click(,)HandlesButton1.Click

 

Dima()={678,45,324,528,439,387,87,875,273,82}

 

Dimi%,j%,n%,t%

n=UBound(a)

 

Label1.Text="待排序的数组元素为:

Fori=0Ton

 

Label1.Text&=a(i)&""

 

Nexti

 

Label1.Text&=vbCrLf&vbCrLf

Fori=0Ton

 

Forj=0Ton-i-1

 

Ifa(j)>a(j+1)Then

t=a(j)

 

a(j)=a(j+1)

a(j+1)=t

 

EndIf

 

Nextj

 

Nexti

"&vbCrLf

Label1.Text&="排序后的数组元素为:

Forj=0Ton

 

Label1.Text&=a(j)&""

Nextj

 

EndSub

"&vbCrLf

完整程序:

 

PrivateSubButton1_Click(ByVal

 

sender

 

As

 

System.Object,

 

ByVal

 

eAs

System.EventArgs)HandlesButton1.Click

 

Dima()={678,45,324,528,439,387,87,875,273,82}'删除了a=Array(678,45,324,528,439,387,87,875,273,823)

Dimi%,j%,n%,t%

 

n=UBound(a)

'显示原数据

 

Label1.Text="待排序的数组元素为:

"&vbCrLf

Fori=0Ton

Label1.Text&=a(i)&""

 

Nexti

Label1.Text&=vbCrLf&vbCrLf

 

'冒泡排序,相邻对比,大的数沉底

Fori=0Ton

 

Forj=0Ton-i-1

Ifa(j)>a(j+1)Then

 

t=a(j)

 

a(j)=a(j+1)

a(j+1)=t

 

EndIf

Nextj

 

Nexti

 

'排序结果

Label1.Text&="排序后的数组元素为:

"&vbCrLf

Forj=0Ton

 

Label1.Text&=a(j)&""

 

Nextj

EndSub

 

4.将一个有序数组中重复出现的数删除,删得只剩一个。

(!

)主调程序运行后的结果如图所示。

解题思想:

从数组最右边往左两两比较,若相

同,右边的数依次左移,数组元素减1。

(程序中红色代码为应填入的内容)

 

PrivateSubButton1_Click()HandlesButton1.Click

 

Dimb()AsInteger={23,45,45,60,70,70,70,90,99,100,100,120,120,

 

120},i%,n%

Label1.Text=""

 

Callp(b,n)

Fori=0Ton

 

Label1.Text&=b(i)&""

 

Next

 

EndSub

Subp(

(1))ByVala()

 

Dimm%,k%

 

n=UBound(a)

m=n

 

DoWhile

(2)m>0

Ifa(m)=a(m-1)Then

 

Fork=(3)

a(k-1)=a(k)

 

Nextk

n=(4)n-1

 

EndIf

 

m=(5)m-1

Loop

AsInteger,ByRefnAsInteger

 

mTon

ReDimPreservea(n)

EndSub

 

5.在一维数组中利用移位的方法显示如图所示的结果。

(程序中红色代码为应填入的内容)

 

PrivateSubButton1_Click(......)HandlesButton1.Click

 

Dima(7)AsInteger,i%,j%,t%

 

Label1.Text=""

 

Fori=1To7

 

a(i)=i

 

Label1.Text&=a(i)&""

Nexti

 

Label1.Text&=vbCrLf

Fori=1To7

 

t=

(1)a(7)

Forj=6To1Step-1

 

(2)a(j+1)=a(j)

Nextj

 

a

(1)=(3)t

 

Forj=1To7

Label1.Text&=a(j)&""

 

Nextj

Label1.Text&=(4)

 

vbCrLf

Next

 

EndSub

 

6.回文素数的判断和应用。

(1)编写一函数

hws(n),对于已知正整数

n,判断该数是否是回文素数,函数的返回

值为布尔类型。

所谓回文素数是指构成的字符左右对称的素数。

例如:

11、101、313等。

(2)编写主调程序,调用函数

hws,并显示回文素数。

下面的程序求

10~1000以内的

所有回文素数。

 

程序设计思想:

选取正整数

 

N,若

 

N是素数,调用子过程

 

hws

 

判断该素数是否为回文

数(判断左右对称),若是,在文本框内显示所求结果,如图所示。

PrivateSubButton1_Click(,)HandlesButton1.Click

DimflgAsBoolean,i%,j%,m%

Fori=

m=Int(Sqr(i))

Forj=2Tom'判断是否为素数

IfiModj=0Then

Nextj

Ifj>mThen

Call

 

IfflgThenText1=Text1&i&vbCrLf

EndIf

Nexti

EndSub

PrivateSubhws(nAsInteger,bzAsBoolean)

Dimj%,k%,m$

bz=True

m=CStr(n)'将数值转为字符

k='求字符m的长度

Forj=1Tok\2'判断回文数

IfMid<>Mid(m,k-j+1,1)Then

bz=False

ExitFor

EndIf

Nextj

EndSub

7.编程求

1000

以内满足如下条件的正整数

N:

它的各个因子(包括

1和N)之和

sum

是一个素数。

例如:

25

的因子为

1、5、25,其和

1+5+25=31

是素数。

程序设计思想:

选取正整数

N,分解其因子,并累加,子过程

Prime

用于判断累加和

是否是素数,若是素数,在文本框内显示所求结果,如图所示。

PrivateSubButton1_Click(,)HandlesButton1.Click

DimflgAsBoolean,i%,sum%,n%,t$

Forn=2To1000

sum=1

t="1"

'存放各个因子之和表达式

i=2

DoWhilei<=

'

求给定正整数的所有因子

IfnModi=0Then

sum=

t&="+"&i

EndIf

i+=1

Loop

t=t&"="&sum

Call

IfflgThen

TextBox1.text&=Str(n)&":

"&&

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

当前位置:首页 > 外语学习 > 韩语学习

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

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