C程序设计实训指导书.doc

上传人:cl****1 文档编号:546469287 上传时间:2023-04-20 格式:DOC 页数:31 大小:727.51KB
返回 下载 相关 举报
C程序设计实训指导书.doc_第1页
第1页 / 共31页
C程序设计实训指导书.doc_第2页
第2页 / 共31页
C程序设计实训指导书.doc_第3页
第3页 / 共31页
C程序设计实训指导书.doc_第4页
第4页 / 共31页
C程序设计实训指导书.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《C程序设计实训指导书.doc》由会员分享,可在线阅读,更多相关《C程序设计实训指导书.doc(31页珍藏版)》请在金锄头文库上搜索。

1、C程序设计实训指导书6目 录C#程序设计(下)实训大纲1实训一 网络聊天工具4实训二 排序算法的演示6实训三 简单游戏制作11附件一:实训日志模板15附件二:实训报告模板19附件三:实训评分标准20C#程序设计(下)实训大纲一、实训目的:C#程序设计实训(下)课程是软件专业以及与软件有关的专业的岗位技能核心课程。本课是集于理论与实践一体的综合应用课程。通过学习本课程学生初步掌握面向对象程序设计的概念以及在.NET平台下开发应用程序的技能。主要目的是让学生通过实训熟悉C#语言的语法,面向对象的程序设计设计思路,运用Visual C#.NET平台开发Windows应用程序,数据库应用程序以及网络应

2、用程序等。二、实训内容和要求1、掌握.net中用于读写文件及管理文件系统的类,能够使用.net中的IO操作进行高级应用程序开发。2、掌握各种存储数据的数据结构,如动态数组、队列、栈、哈稀表以及他们的泛型,并能在应用程序中灵活应用。3、理解委托和事件,掌握在应用程序中使用写代码的形式给控件注册事件。4、掌握实现异步的方法,包括使用委托和在窗体应用程序下使用BackgroundWork来实现。5、掌握使用GDI+绘图的基本方法。6、掌握简单的网络编程方法。7、掌握ADO.NET的结构以及用ADO.NET访问数据库的一个简单模型。8、在编写程序过程中,培养预测和寻找错误的能力,并能正确处理错误和异常

3、。9、初步掌握编制软件文档。10、懂得制作安装程序具体内容见实训指导。三、先修课程程序设计基础、C#程序设计(上)、数据结构四、参考文献1 张立,程序天下:C-#2.0实例自学手册-200个例子,电子工业出版社,20082 章立民研究室,Visual.C#.2005.程序开发与界面设计秘诀,.机械工业出版社,20063 代方震,陈冠军,Visual c#2005程序设计从入门到精通,人民邮电出版社,20074 王小科等,Visual C#2005程序设计自学手册,人民邮电出版社,20085 邵鹏鸣,C#面向对象程序设计,清华大学出版社,2008.46万科、覃剑,Visual C#.NET程序设

4、计基础与上机指导,清华大学出版社, 2007.37张华、吴浩东,Visual C#程序设计教程与上机指导,清华大学出版社,2005.38杨晓光等,Visual C#.NET程序设计习题解析与实习指导,清华大学出版社,2007.1五学时分配 序号实训内容学时分配总学时理论学时实践学时1实训一 网络聊天工具10102实训二 排序算法的演示883实训三 简单游戏制作884实训交流225实训报告22合计3030六操作与考核办法采取提交电子材料与实训操作相结合的方法进行考核。1、实训操作办法(1)学生实训以小组为单位,小组人数以35人为宜。(2)学生实训时认真做好小组分工和实训计划,并书写需求分析报告、

5、总体设计说明书和详细设计说明书及测试报告,这些材料一并包含在课程实训说明书中,以电子稿或打印稿方式提交,同时每个小组必须提供完整的源程序代码。(3)教师应在小组成绩的基础上认真评定个人成绩,并对学生的课程实训说明书进行批改。(4)指导教师在实训开始前,布置若干个难度适中的实训课题供学生选用。鼓励学生自选课题,但要经指导教师审核。2、学生在完成实训后须提交如下电子文档:(1)把所设计的程序传到FTP服务器上。(2)完成实训任务的详细日志。(3)实训的实施过程(包括主要的步骤以及所使用的方法)。(4)实训中出现的异常情况及解决办法。(5)对实训改进的探讨。3、成绩考核评定(具体项目评定见附件三):

6、(1) 积极参与课程实训,按质按量完成课程实训要求。(2) 出勤情况,占20%.(3) 在项目开发过程中完成的工作量,占30%.(4) 对开发的项目涵盖的知识点的掌握情况,占40%。(5) 项目中有新功能或创意,占10%。七、参考课题1、文件管理器的实现2、综合性绘图工具3、网络聊天工具的实现4、简单网络游戏的实现5、电子邮箱的实现(需自学POP3协议和SMTP协议)6、移动通信管理和收费系统的实现7、数据库管理信息系统的设计与实现8、游戏算法的设计与实现9、某个算法的实现和过程演示10、其它(自己寻找课题,需经指导教师认可)附件:1、实训日志模板2、实训报告模板3、实训评分标准实训一 网络聊

7、天工具一、实训目的:1、掌握使用同步的方式进行双机通信,进而学会使用异步的方式进行通信。2、将对象在网络中传输的方法。3、掌握多线程间调度的知识。4、掌握ADO.NET的结构,并能使用ADO.NET访问数据库。5、应用MDI相关的属性创建多文档窗体,熟练掌握WinForms控件的使用。二、实训内容:程序功能: 在本实训项目中,我们要求实现一个简单的在线聊天工具,它提供基本的聊天功能。要求能够实现登陆判断、维持在线用户列表,支持群聊和私聊等功能。该应用程序的结构为一个客户机/服务器结构,要求设计的功能有两个方面:1、服务器端:管理着聊天任务,它维持着一张当前在线用户的列表,转发用户发来的信息,主

8、要功能如下:(1)监听本机IP地址中的一个指定的端口。(2)所有合法用户的数据存放在SQL数据库中。(3)当有客户端向该端口发出请求时,服务器程序立刻建立一个与该客户端的连接并启动一个新的线程来处理该客户端的所有请求。(4)服务器端根据客户端发送来的各种不同的请求,执行相应的操作,并将结果返回给该客户端。要求至少定义四种请求命令:CONN(请求登陆)CHAT(聊天)PRIV(私聊)EXIT(离开),服务器接收ASCII字符信息,用“|”分隔信息的各个部分,一个信息包含一条命令,一个或多个信息参数。简单命令格式如下:A:CONN| 用户名|密码| 该命令是在客户端和服务器端连接后由客户端程序登陆

9、时发送,服务器程序收到该命令后会将用户名和密码与所连接数据库的“用户”表进行比对,若是合法用户,允许登陆,添加到在线用户列表,同时向每个在线用户发送更新在线用户列表的命令;否则发送错误信息。B:CHAT|发送者的用户名:发送信息的内容| 该命令是用户在客户端程序界面中输入发送信息的内容后,单击“发送”按钮后,由客户端程序自动发送,服务器程序收到该命令后,便将“发送者的用户名:发送信息的内容”转发给所有的当前在线用户。C:PRIV|发送者的用户名|接受者的用户名|发送信息的内容| 该命令是用户在客户端应用程序中选中“悄悄话”复选框(私聊),输入发送信息内容并单击“发送”按钮后,由客户端应用程序自

10、动发送,服务器收到该命令后,将“发送者的用户名 send to 接受者的用户名:发送信息的内容”转发给对应的接收者。D:EXIT|用户名| 该命令是用户在客户端程序中单击“离开”按钮后,由客户端程序自动发送的,服务器应用程序收到该命令后,将发送者的用户名从当前在线用户列表中删除,并给当前在线的用户发送更新在线用户列表的命令。2、客户端:包含用户登陆窗口和用户聊天的主窗口,它允许用户登陆到服务器,可以向服务器发送信息,同时可以接收从服务器返回的信息,要求设计的主要功能如下:(1)向远程服务器发送连接请求(2)得到服务器程序的确认后,建立于服务器的连接,并获得与服务器交互的流通道(NetworkS

11、tream)。(3)通过网络流通道与服务器端进行数据通信。向服务器发送服务器能够识别的命令请求,同时也接收服务器发回的命令。客户端能够识别的命令有ERRO(通知用户名和密码错误)、JOIN(通知当前在线用户有新的用户进入聊天室)、LIST(更新当前在线用户)QUIT(关闭客户端程序)。客户端接收ASCII字符信息,用“|”分隔信息的各个部分,一个信息包含一条命令,一个或多个信息参数。简单命令格式如下:A:ERRO| 该命令是服务器验证身份时,用户名或密码错误,向客户端发送的,客户端收到此命令后,可以关闭与服务器的连接或重新登陆;B:JOIN|刚刚进入聊天室的用户名| 该命令是服务器程序确认一个

12、用户登陆后,由服务器自动向当前在线的客户端发送的,以此来通知所有在线用户此时有新的用户进入聊天室,客户端收到此命令后,在各自的窗口中显示此用户已进入聊天室;C:LIST|在线用户1|在线用户2|在线用户2| 该命令是服务器程序确认一个用户登陆或EXIT命令后,由服务器自动向当前在线的客户端发送的,以此来通知所有的在线用户刷新自己的当前在线用户列表,客户端程序收到此命令后,在各自的窗口中刷新当前在线用户列表;D:QUIT| 该命令是服务器程序收到客户端发送来的EXIT命令后,由服务器自动向该客户端发送的,以便通知该客户端关闭连接同时关闭客户端程序,客户端程序收到此命令后,关闭与服务器的连接,并且

13、关闭客户端程序。图1-1 服务器端图1-2 客户端登陆窗口 图1-3 客户端登陆提示图1-4 客户端聊天主窗体三、相关知识:TcpListener和TcpClient类实现了对Socket的封装,简化了网络编程模型。1、使用TCP服务TCPClient 类使用 TCP 从 Internet 资源请求数据。TcpClient 的方法和属性提取某个 Socket 的创建细节,该实例用于通过 TCP 请求和接收数据。由于到远程设备的连接表示为流,因此可以使用 .NET Framework 流处理技术读取和写入数据。要建立 TCP 连接,必须知道承载所需服务的网络设备的地址以及该服务用于通信的 TCP

14、 端口。IANA 列表中所没有的服务可使用 1,024 到 65,535 这一范围中的端口号。2、TCP协议通信的流程TCP协议是面向连接的协议,它的实现需要数据发送方和数据接收方建立数据通信连接,它的具体流程如下:(1)服务器端首先创建服务器套接字(2)服务器套接字监听一个端口,等待客户端的请求(3)客户端创建一个客户端套接字(4)客户端向服务器端发送连接请求(5)服务器确认与客户端的连接(6)客户端和服务器利用建立的连接进行通信(7)通信完毕后,客户端和服务器关闭各自的连接3、Socket编程基础同步服务器套接字挂起应用程序的执行,直到套接字上接收到连接请求。同步服务器套接字不适用于在操作中大量使用网络的应用程序,但它们可能适用于简单的网络应用程序。使用 Bind 和 Listen 方法设置 Socket 以在终结点上侦听之后,Socket 就可以随时使用 Accept 方法接受传入的连接请求了。应用程序被挂起,直到调用 Accept 方法时接收到连接请求。接收到连接请求时,Accept 返回一个与连接客户端关联的新 Socket 实例。l 利用Socket建立服务器程序(1)要用Socket创建一个TCP服务器套接字,用IP地址和端口初始化服务器,代码如下:private const int portNum = 13;IPAddress ipAdd = IPAd

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号