VisualBasic程序设计形成性考核册作业答案四.docx
- 文档编号:15996597
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:8
- 大小:17.34KB
VisualBasic程序设计形成性考核册作业答案四.docx
《VisualBasic程序设计形成性考核册作业答案四.docx》由会员分享,可在线阅读,更多相关《VisualBasic程序设计形成性考核册作业答案四.docx(8页珍藏版)》请在冰点文库上搜索。
VisualBasic程序设计形成性考核册作业答案四
VisualBasic程序设计形成性考核册作业答案四
一、选择题
1、WinsockServer.LocalPort=10001语句的含义是(A)。
A、设置侦听端口B、设置计算机IP地址C、设置中断地址D、设置通讯协议
2、当Winsock控件处于关闭状态时,其State属性的值是(B)。
A、1B、0C、2D、6
3、相对于UDP协议而言,TCP协议是一种(A)。
A、面向连接的协议B、无连接协议C、计算机间不建立连接D、适用于传送少量数据
4、VB程序中通常不会产生错误提示的(D)。
A、编译错误B、实时错误C、运行时错误D、逻辑错误
5、VB程序的编译错误一般可通过VB集成环境的何种设置,自动检测(B)。
A、要求变量声明B、自动语法检测C、自动显示快速信息量D、根本无法自动检测
6、VB程序中设置断点的按键是(C)。
A、F5键B、F6键C、F9键D、F10键
7、OnErrorGoToErrLB语句中,ErrLB的含义是(A)。
A、行标识号B、SUB过程名C、FUNCTION过程名D、错误号
8、Err对象中,用来表示错误描述的属性是(B)。
A、ErrNoB、DescriptionC、NumberD、Source
二、填空题。
1、使用Winsock控件时,一旦有数据到达,将首先触发该控件的DataArrival事件。
而如果要发送数据,则通常使用该控件的senddata方法。
2、Winsock控件主要用来编制或基于TCP/IP经UDP协议的通话程序。
3、ActiveXEX文件的后缀是exe。
4、COM对象有两种类型接口,即标准接口和用户接口。
5、如果希望得到本地计算机的IP地址,可以使用Winsock控件的localIP属性。
6、Winsock控件的BytesReceived属性返回接受到的数据,通常使用getdata方法来获取这些数据了。
7、Winsock1.Listen语句的含义是使服务程序处于侦听状态等待客户访问。
8、常用中的VB网络编程控件主要有Winsock、InternetTransfer、WebBrowser三种。
9、VB中的程序错误类型主要有编译错误、逻辑错误、实时错误等三种。
10、VB中用于关闭错误捕获机制的语句是onerrorgoto0。
三、问答题。
1、简述基于Socket的通信过程。
Socket在计算机提供了一个通信端口,可以通过这个端口与任何一个也同时具有Socket接口的计算机进行通信,应用程序在网络上传输、接收的信息都通过这个Socket接口实现,只需要对Socket接口进行数据的读写操作就可以了。
2、简要设计错误处理程序的3个步骤。
(1)捕捉错误,并强制程序跳转
(2)编写错误处理程序,对所有可预见的错误作出反应
(3)退出错误处理程序
3、简述常用的程序调式技巧
(1)事先做好备份
(2)分离受怀疑的程序
(3)缩小搜索范围
(4)使用MSGBOX语句
4、简述基于Winsock控件的开发模式。
(1)服务器程序的开发模式
(A)服务器程序必须设置好LOCALPORT,作为侦听端口,该值可设置成任意一个整数,只要其他应用和谐没有使用过的值均可,但习惯上应大于1000
(B)使用LISTRN方法使用服务器进入侦听状态,等待客户机程序的连接请求。
(C)客户机程序发出连接请求后,将触发服务器程序的CONNECTIONREQUEST事件,该事件得到一个参数REQUESTID。
(D)服务器程序使用ACCEPT方法接受客户机程序的REQUESTID请求,至此,服务器程序就可以使用SRNDDATA方法向客户机发送数据了。
此时应特别注意两点:
一是ACCEPT方法必须用到上一步的REQUESTID作为其参数;二是在执行ACCEPT方法前,服务器仍处于侦听状态,此时应首先使用CLOSE方法关闭服务器,然后再调用ACCEPT方法。
(E)当服务器程序接收到数据时,会产生DATAARRIVAL事件。
在该事件中可以使用GETDATA方法接收数据。
(2)客户机程序的开发模式
(A)客户程序首先应设置好REMOTEHOST属性,用来指向运行器程序的主机名或IP地址
(B)设置REMOTEPORT属性,用来指向服务器程序和侦听端口号。
(C)使用CONNECT方法向服务器提出连接请求。
(D)如果服务器接受上述连接请求,客户机程序会产生CONNECT事件。
可以根据需要,在此事件中编写程序,比如使用MSGBOX函数向用户提示“连接已成功”之类的信息。
(E)连接成功之后,就可以根据需要使用SENDDATA方法向服务器发送数据了。
(F)当客户机程序接收到数据时,会产生DATAARRIVAL事件,可以用GETDATA方法接收数据。
四、程序设计题。
1、利用冒泡排序算法开发以下程序,请指出程序中存在的错误并改正。
PrivateSubCommand1_Click()
DimA(1To20)AsInteger
Dimc,j,TAsInteger'此处有错,应为Dimc,j,Tasinteger
‘随机生成一组数据
Forc=1To20
A(c)=Int(Rnd*100)
Nextc
‘排序
Forc=1To20
Forj=c+1To20
IFA(c)>A(j)Then
T=A(j)
A(j)=A(c)
A(j)=T'此处有错,应为A(C)=T,实现
EndIf 'A(C)和A(J)的交换
Next
Next
‘在窗体上输出结果
Cls
Forc=1To20
PrintA( i ) '此处有错,应为A(C).下标越界.
Nextc
EndSub
2、利用Winsock控件开发一个点对点聊天系统,该系统由一个服务器应用程序和一个客户端应用程序组成,能够实现网络中两台计算机间的通话任务。
解:
如下界面的设计中,若不说明,各对象均采用默认的名称。
服务器程序的界面设计
1、创建一个“标准EXE”工程。
选中“工程”菜单的“部件”选项,在控件中找到MicrosoftWinsockControl并将其选中。
如果没有找到,通常是由于VB安装不安全的缘故,可以找到安装盘并安装其中的Mswinsck.cad压缩包。
2、将form1的名称改为frmSvr,并在其中添加一个命令按钮控件,将其Caption属性修改为“退出”。
3、在窗体上添加三个添加TextBox控件,分别将其名称修改为txtServerIP,txtSend和txtReceive,用来显示服务器的IP地址和需收发的信息。
4、在窗体上添加一个Winsock控件,将其名称改为WinsockServer,将Protocol(协议)属性设置为0(即sckTCPProtocol)
各控件及事件代码如下:
PrivateSubCommand1_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
txtreceive.Text=""
txtsend.Text=""
Winsockserver.LocalPort=10001
txtserverip.Text=Winsockserver.LocalIP
Winsockserver.Listen
EndSub
PrivateSubtxtsend_Change()
Winsockserver.SendDatatxtsend.Text
EndSub
PrivateSubWinsockserver_ConnectionRequest(ByValrequestIDAsLong)
Winsockserver.Close
Winsockserver.AcceptrequestID
EndSub
PrivateSubWinsockserver_DataArrival(ByValbytesTotalAsLong)
DimmystrAsString
Winsockserver.GetDatamystr
txtreceive.Text=mystr
EndSub
客户机程序的界面设计
1、与服务器程序类似,创建一个新的“标准EXE”工程,并添加Winsock控件。
2、将form1的名称改为frmClt,并添加两个命令按钮控件,分别将它们的Caption属性设置为“退出”和“连接聊天服务器”。
3、在窗体添加四个文本框控件,分别将其名修改为txtClientIP,txtSenerIP,txtsend和txtReceive,用来显示客户机和要连接的服务器的IP地址以及需收发的信息。
4、在窗体上添加一个Winsock控件,将其名称改为WinsockClient,将(协议)属性设置为0(即sckTCPProtocol)
各控件及事件代码如下:
PrivateSubCommand1_Click()
UnloadMe
EndSub
PrivateSubCommand2_Click()
Winsockclient.RemoteHost=txtserverIP.Text
Winsockclient.Connect
EndSub
PrivateSubForm_Load()
txtreceive.Text=""
txtsend.Text=""
Winsockclient.RemotePort=10001
txtclientIP.Text=Winsockclient.LocalIP
EndSub
PrivateSubtxtsend_Change()
Winsockclient.SendDatatxtsend.Text
EndSub
PrivateSubWinsockclient_Connect()
MsgBox"你成功地与聊天室服务器进行了联接",vbInformation
EndSub
PrivateSubWinsockclient_DataArrival(ByValbytesTotalAsLong)
DimmystrAsString
Winsockclient.GetDatamystr
txtreceive.Text=mystr
EndSub
评论这张
转发至微博
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualBasic 程序设计 形成 考核 作业 答案