2025年电大VB程序设计作业完整解答与技巧攻略_第1页
2025年电大VB程序设计作业完整解答与技巧攻略_第2页
2025年电大VB程序设计作业完整解答与技巧攻略_第3页
2025年电大VB程序设计作业完整解答与技巧攻略_第4页
2025年电大VB程序设计作业完整解答与技巧攻略_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VisualBasic程序设计作业1

一、选择题

1.D2.B3.C4.C5.B6.D7.A8.B9.A10.C11.C12.C13.B

14.D15.A

二、填空题

1.视图工具箱

2.对象事件

3..vbp.frm

4.窗体控件菜单

5.完毕某种特定的功能对象名措施名Form1.Show

6.MultilineTrue

7.4000

8.AutoSizeTrue

9.窗体布局窗口

10.txtshow.text="GOODWORK!"

11.Click。、frm1.show

12.单击双击装载多响应某个事件后所执行的程序代玛emd1Click

13.完毕某种特定的功能对象名.措施名FormI.Show

14.工具选项选项自动诏法检测

15.TimerIntervalms

三、问答题

1.参照答案

答:可视化编程是目前最直观的一种编程措施,人们一般用Visual一词表达它。之因此叫做“可视”,

是指你无需编程,仅通过直观的操作方式即可完毕界面的设计工作。因此,可视化语言是目前最佳的

Windows应用程序开发工具。

在这种语言中引入了控件的概念,每个控件均有若干措施和事件,并通过一系列的属性来控制控件的

外观。运用这些控件,编程过程就如同画画,随意点几下鼠标,一种按钮就完毕了,这些工作在使用老式

编程语言的状况下,需要编写大量复朵的程序代码才能实现。

可视化编程重要用到了事件驱动机制,其原理是:当应用程序运行后,程序处在等待状态,当某个事

件发生后,程序就去执行此事件的事件过程,当这个事件过程执行完后,应用程序又处在等待另一种事件

发生的状态。

2.参照答案

答:对象是代码和数据的封装体,在VB中,“数据”体现为属性,“代码”则体现为事件和措施。建

立一种对象后,其操作通过与该对象的有关属性、事件和措施来描述。

属性是一种对象的基本特性,每个对象均有它自己的属性。通过修改对象的属性,可以变化对象的外

观和功能V

措施就是要对象执行的动作,一般可以将它理解为VB提供的一种特殊的过程和函数。其特殊性在于,

这些过程和函数是封装在对象内部的,是在对象上实行的某种操作功俅。

事件就是在对象上所发生的事情。对象的事件是由VB预先设置好的、能被对象识别的动作。顾客不

能建立新的事件,但可以根据需要对事件进行编程。从非严格意义上注,可以将事件理解为一种特殊的措

施。

3.参照答案

答:老式的面向过程的应用程序中,应用程序自身控制了执行哪一部分代码和按何种次序执行代码,

程序从第一行代码开始执行并按应用程序中预定的途径执行,顾客无法变化程序的执行流程。

在事件驱动的应用程序中,程序的执行发生了主线的变化,代码大是按照预定的途径执行,而是在响

应不•样的事件时执行不•样的代码片段。每个对象均有•种对应的事件集,每个事件发生都要执行段

程序代码。事件可以由顾客操作触发,也可以由操作系统或其他应用程序的消息触发,甚至可由应用程序

自身的消息触发。这些事件的次序决定了代码执行的次序,因此,应月程序每次运行所通过的代码途径是

不确定的,它的执行流程由顾客来决定。在程序设计时,不需要指出允执行哪部分代码,或按什么次序执

行代码,只需编写针对某个事件的程序代码即可。

4.参照答案

答:事件驱动是VB应用程序的基本机制,其基本过程是:

(1)启动应用程序,装载和显示窗体。

(2)窗体或窗体上的控件等待事件的发生。事件可由顾客引起(例如键盘操作或鼠标点击)、可由系

统弓起(例如定期器控件)、也可由代码间接引起(例如现代码装载其他窗体时产生的Load事件)。

(3)当某个事件发生后,执行其对应的事件过程代码。

(4)反复执行第2和第3步。直到碰到End语句或单击“结束”按钮停止程序的运行。

四、程序设计题

1.

PiivateSubFoun_Loiid()

Text1.Text="VB程序设计”

Textl.FontSize=16

EndSub

PrivateSubCommandl_Click()

TextI.Visible=False

EndSub

PrivateSubCommand2_Click()

Text1.Visible=True

EndSub

2.

PrivateSubCommand1_CIick()

Text).Text=',"

Text2.Text=""

[Tex(3.Texl=""

EndSub

PrivateSubCommand2_CIick()

IfTextlText=""Orlext2.Text=""OrTexB.Text=""’「hen

MsgBox”成绩输入不会!"

Else

Text4.Text=(Val(TextLText)+Val(Text2.Text)+Val(TextS.Text))Z3

EndIf

SubEnd

PrivateSubCommand3_Click()

UnloadMe

EndSub

3.

PrivateSubCommandl_CIick()

IfTextI.Text=""Then

MsgBox”至少要输出单价!"

Textl.SetFocus

ExitSub

EndIf

IfText2.Text=""ThenTexl2.Text=1

IfText3.Text=""ThenText3.Text=1

Tcxt4.Tcx(=Text!.Text*Text2.Tcxt*Tcx(3.Tcxt

EndSub

电大天堂【VisualBasic程序设计】作业2

・、选择题

I.B2.C3.D4.B5.D6.A7.B8.C9.A10.D11.C12.B

13.D14.C15.A16.B17.C18.B19.D20.B

二、填空题

I.下拉式菜单弹出式菜单

2.打开另存为颜色字体打印

3.文本框列表框

4.OptionBase1

5.Call语句

6.工程工程属性通用Form1.Show

7.0

8.Sub过程的过程名不能返回值,而Funciion过程能通过过程名返回值

9.窗体模块原则模块类模块

10.移出内存无效状态

II.(I)2*Cosa*Sina/(2*a)

(2)Sqr(s*(s-a)*(s-b)*(s-c))

(3)Sin(45*3.14/180)

12.(I)x>=lAndx<12

(2)A+B>=COra-c<=c

(3)a>0Andb>0Or(a<()Andb<0)

13.False

14.ForWhileDo

15.3

三、阅读下列程序,给出程序运行成果。

1.程序运行后,单击窗体,输出成果为:5050。

2.

3.

4.

3.43

***

*****

**也****

十+十十十十十中十

四、程序设计题

1.

PrivateSubCommand1_Click()

DimxAsSingle,yAsSingle

x=Val(Tcxt1.Text)

Ifx<100Then

y=x

Else

Ifx<200Then

y=9.5*x

Else

Ifx<300Then

y=0.9*x

Else

Ifx<50()Then

y=0.8*x

Else

y=0.7*x

EndIf

EndIf

EndIf

EndIf

Tcx(2.Tcxt=y

EndSub

2.

PrivateSubForm_Load()

DimxAsInteger

x=100

DoUntilx>200

IfxMod3o0Then

Text1.Text=Text1.Text&Str(x)&Chr(13)&Chr(10)

EndIf

x=x+I

Loop

EndSub

3.

PrivateSubForm_Click()

Print"*";Tab⑼;3.Tab(18);6;Tab(27);9:Tab(36);12

Print

For1=15to18

PrintI;

Forj=3to12Step3

PrintTab(3*j)y*I;

Ncxlj

Print

NextI

Endsub

PrivateSubCommandl_Click()

UnloadMe

EndSub

PrivateSubOptionl_Click()

Text1.Text=10*2

EndSub

PrivateSubOption2_Click()

TextI.Text=10/2

EndSub

PrivateSubOption3_Click()

Text1.Text=10+2

EndSub

PrivateSubOption4_Click()

TextI.Text=10-2

EndSub

5.

PrivateFunctionDay(nAsInteger)

SelectCasen

Case0

Day="星期日”&Chr(13)&"(Sunday)"

Case1

Day="星期一"&Chr(13)&"(Monday)"

Case2

Day="星期二"&Chr(13)&"(Tuesday)"

Case3

Day="星期三"&Chr(13)&"(Wednesday)"

Case4

Day="星期四"&Chr(13)&"(Thursday)"

Case5

Day="星期五"&Chr(13)&"(Friday)"

Case6

Day="星期六"&Chr(13)&"(Saturday)"

EndSelect

EndFuiictiun

PrivateSubTextl_KcyPress(KeyAsciiAsInteger)

DimnAsInteger

n=Val(Textl.Text)

IfKcyAscii=13Then

Ifn>=0Andn<7Then

LabelI.Caption=Dayin)

Else

MsgBox”请输入0~6之间的整数!”

EndIf

EndIf

Texll.SelStarl=0

Textl.SelLength=Len(Text1.Text)

EndSub

6.

新建一种工程,在默认的窗体Forml上放置•种Picture控件,然后编写如下代码。

PrivateSubPicture1_MouscDown(ButtonAsInteger.ShiftAsInteger,XAsSingle,YAsSingle)

IfButton=2Then

MsgBox"YoupressedrightButton"

PictureI.MouscPointcr=vbArrow

EndIf

EndSub

PrivateSubPicture1_MouscMovc(ButtonAsInteger,ShiftAsInteger.XAsSingle,YAsSingle)

Picture1.Mousepointer=vbUoArrow

EndSub

7.

PrivateSubForm_Load()

List1.Additem"李敏"

List1.Additem"张华"

List!.Additem"吕晓怦"

ListLAdditem"赵巍"

Listl.Addltein"袁莉"

List!.Additem"王津"

List1.Additem"何小渴"

Listl.Additem"崔宁"

List!.Additem"陈曦"

List1.Additem"刘伟楠”

EndSub

PrivateSubCommandl_CIick()

IfText1.Text<>""Then

List1.AdditemTexti.Text

Textl.Text=""

Else

MsgBox”请在文本框中输入信息!"

EndIf

EndSub

PrivateSubCommand2_Click()

Listl.RemoveltemList).Listindex

EndSub

PrivateSubCominand3_Click()

IfCommand3.Caplion="修改,Then

Text1.Text=List).Text

Tcxtl.SetFocus

Command1.Enabled=False

Command?.Enabled=False

Command3.Caption="修改确认"

Else

ListI.List(ListI.Listindex)=Text1.Text

CommandI.Enabled=True

Command2.Enabled=True

Textl.Text=""

Cornmand3.Cap(ion="修改"

EndIf

EndSub

PrivateSubListl_Click()

IfList1.Listindex<>-1Then

Command?.Enabled=True

Command?.Enabled=True

EndIf

EndSub

电大天堂【VisualBasic程序设计】作业3

一、选择题

1.B2.B3.B4.A5.C6.C7.D8.C9.C10.C11.B12.B13.A

14.B15.C16.C17.B18.A19.C20.B21.A

二、填空题

1.Output

2.''c:\",''d:\”

3.Kin"d:\tem.tmp”

4.OpcnMSEQNEW.DATTorOutputAs#1

5.Open^SEQOLD.DAT'TorInputAs#2

6.右上

7.False

8.Picture1.Line(5(X),500)-(1000,1(X)0),RGB(255,0,0),BF

9.520

10.ActivcConnection

11.外部数据库、远程数据库

12.ADOrsD学号")

13.增长、删除、修改(或者Select、Delete、Update)

14.Select*fromTable1Where学号='001'

15.当地数据库、远程数据库

三、程序设计题

1.

PrivateSubForm_Lx)ad()

Drivel.Drive="c:\"

="*.bmp;*.gif;*.jpg"

EndSub

PrivateSubDrivel_change()

Dirl.Path=DriveI.Drive

EndSub

PrivateSubDirl_Change()

=Dirl.Path

EndSub

PrivateSub()

IfRight(,1)='VThen

=Form1.+FormI.

Else

=Farm1.4-"V4-Farm1.

EndIf

Picturel.Picture=LoadPiclure(f5)

Picture1.AutoSize=True

EndSub

2.

PrivateSubFonn_Click()

DimiAsSingle,twopieAsSingle

twopie=8*Atn(1)'求pi

DrawWidth=2’设置点的大小

Scale(-twopie,1)-(twopie,-1;’设置坐标系

Fori=-twopieTotwopieSteptwopie/360'画x粕

PSet(i,0)

Nexti'标X轴

CurrentY=0

CurrentX=-twopie

Print"-2pi";

CurrentX=-twopie/2

Print"-pi";

CurrentX=twopie/2

Print"pi";

CurrentX=twopie-0.6

Print"2pi";

Print

Fori=-1ToIStep0.01'画y轴

PSei(0,i)

Nexti

CurrentX=0'标y轴刻度

Fori=-1To1Step0.5

CurrentY=i

Printi

Nexti

Fori="twopieTotwopieStep0.1画余弦曲线

PSct(i,Cos(i))

Nexti

EndSub

3.

PrivateSubCheckl_Click()

IfCheck1.Value=1Then

Line1.BorderWidth=4

Else

Linel.BorderWidih=1

EndIf

EndSub

PrivateSubOptionI_CIick(indexAsInteger)

Line1.BorderWidth=1

Check1.Vaitie=0

SelectCaseIndex

Case1

LineI.BorderStyle=1

Case2

LineI.BorderStyle=2

Case3

Line1.BorderStyle=3

EndSelect

EndSub

PrivateSubOptionl_Click(IndexAsInteger)

SelectCaseIndex

Case0

Shape1.Shape=0

Case1

Shape1.Shape=I

Case2

Shape1.Shape=3

Case3

Shapel.Shape—4

EndSelect

EndSub

PrivateSubOption2_Click(IndexAsInteger)

SelectCaseIndex

Case0

Shapel.FilIStyle=1

CaseI

Shapel.FilIStyle=3

Case2

Shapel.FillStyle=2

Case3

Shapel.FillStyle=6

EndSelect

EndSub

PrivateSubOption3_Click(IndexAsInteger)

Shapel.BorderWidlh=1

SelectCaseIndex

Case0

Shape!.BorderStyle=0

Case1

Shapel.BorderStyle=I

Case2

Shapel.BorderStyle=4

Case3

ShapeI.BorderStyle=2

Case4

Shape1.BorderStyle=3

EndSelect

EndSub

5.(以SQLServer数据库为例)

‘申明对象变量ADOcn,用于创立与数据库的连接

PrivateADOcnAsConnection

PrivateSubReadFromTableO

DimstrtmpAsString

DimADOrsAsNewRecordset

ADOrs.ActiveConnection=ADOcn

ADOrs.Open"select*fromstudentsorderby学号"

MSFIexGridl.Clear

MSFlexGridl.Rows=0

MSFIexGridl.Cols=3

stitnip—"学号"+vbTab+"姓名"+vbTab+"专业"

MSFlexGrid1.Additemsirtmp

DoWhileNotADOrs.EOF

strtmp=ADOrs("学号")+vbTab+ADOrs("姓名")+vbTab+ADOrs("专业”)

MSFlexGridI.Addltemstrtmp

ADOrs.MoveNexi

Loop

MSFlexGridl.FixedCols=0

MSFlexGrid1.FixcdRows=1

EndSub

PrivateSubCommandl_Click()

UnloadMe

EndSub

PrivateSubForm_Load()

'定义数据库连接字符串

DimstrDBAsString

'用于连接SQLServer数据库,其中:

'Server为服务器名称

,UserID为登录账号

,Password为登录口令

,Database为详细的数据库名

strDB="Provider=SQLOLEDB;LSF;UserID=sa;Pass\vord=;Database=学生"

‘假如还没有建立与数据库的连接,则用如下代码创立。

IfADOcnIsNothingThen

SetADOcn=NewConnection

ADOcn.OpcnstrDB'连接SQLServer数据库

EndIf

ReadFroniTable'调用过程显示students表中的记录

EndSub

行成果及代码请参照主教材和试验教材有关内容。

电大天堂【VisualBasic程序设计】作业4

一、选择题

1.A2.B3.A4.D5.B6.C7.A8.B

二、填空题

1.A.DaiaArrival事件、SendData措施

2.TCP/IP(或者回答TCP协议)

3.EXE

4.顾客自定义接口、原则接口

5.Locallp措施

6.GetData措施

7.使用服务程序处在侦听状态:

8.Winsock

9.实时错误、逻辑错误

10.OnErrorGoto0

三、问答题

1.参照答案

答:Socket是TCP/IP网络中最为通用的API(应用程序接口),也是在Internet上进行应用程序开发最

为通用的API。它为网络中的每台计算机中提供了一种通信端口,通过这个端口,任何两分具有Socket接

口应用程序就可进行信息收发通信了。程序员只需要对Socket接口进行数据的读写操作,主线不必关怀两

台计算机间的通信细炉就可以完毕数据的发送和接受工作。基于Socket的通信过程如图1所示。

或用理序A--------------应用程序B

图1

2.参照答案

答:VB中一般可按下列环节设计错误处理程序:

第1步:捕捉错误,并强制程序跳转

即在错误发生时,捕捉并告知应用转向哪段代码进行错误处理。VB中一般可采用OnErrorGoTo语句

启用错误捕捉机制。

第2步:编写错误处理程序,对所有可预见的错误做出反应

编写错误处理程序的第一步是添加一种行标识符,例如“ChcckError:",以标志错误处理程序的开始。

行标识符的名称最佳具有良好的可读性,并且背面必须跟一种冒号。常规错误处理程序一般放在过程的结

束处,紧跟ExitSub或ExitFunction的行标识符之后。这样在没有错误发生时,过程就不会执行错误处理

程序了。

第3步:退出错误处理程序

•般状况下,只有当错误处理程序位于过程中间位置时,才需要用到专门的错误处理程序退出语句。

一般可使用Resume或ResumeNext语句退出错误处理程序,Resume语句会继续执行引起错误的那句代玛,

而ResumeNext语句则会跳过该语句,执行引起错误代码的下一句代码。假如通过错误处理程序可以修正

错误,则可以使用Resume语句,否则就使用ResumeNexi语句,或者直接使用ExilSub或ExilFunction

语句直接退出过程。

3.参照答案

答:调试程序是一件复杂的工程,不仅规定程序员对系统设计成果非常熟悉,思绪清晰,更需要不停

地在实践中积累经验。如下技巧可供参照:

首先,应事先做好备份:尽管VB提供了众多的调试工具,但要运用这些工具杳找、定位程序中的错

误并非易事,对于某些规模较大的程序,虽然是有经验的程序员也常常要损失好几小时甚至几天的时间来

杳找错误。在调试过程中.很轻易意外地修改、覆盖或删除掉必要的代码部分,因此事先做好备份非常重

要。

另一方面,尽量地分离受怀疑的程序:对于那些代码规模较大,窗口众多的程序而言,假如能将错误

的范围定位于某个窗体或某段代码,则可以使用分离程序的调试措施。基本思绪是:试着找到出错的代码

行(块)或窗体,选择并复制这些代码到一种新的工程中,然后运行新工程,石•看与否还会出现同样的

错误。这样就可以尽量地排除程序其他部分的干扰,提高调试的效率。

第三,缩小搜索范围:假如有也许的话,可删除工程中任何第三方控件和自定义控件,或者任何看来

与问题无关的代码,逐渐缩小搜索范围。或者采用相反的方略,先调试某一段代码或窗体,再象搭积木似

的逐

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论