- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《TCP/IP与网络编程》课程设计报告书题目: 2 4分游戏专业:学号:学生姓名:指导教师:完成日期:1 题目与要求1.1 题目24分游戏(分服务器端和客户端两部分)1.2 功能游戏后台运行一个服务器软件,游戏者通过客户端程序登陆后,服务器随机产生四个1-9之间的随机数供游戏者使用,游戏者根据计算得出结果。若计算出结果,且在规定的时间内,则从客户端输入表达式,服务器端根据客户端的表达式计算,若正确,软件提示:“对了”,如果错了,软件提示“错了”,若超时。软件提示“超时”。服务器同时记录并维护一个游戏玩家的TOP10排行榜,供玩家查询。1.3描述服务器端:接收客户端的命令请求并提供相应的服务。客户端:完成游戏人机界界面的设计,以命令的方式向服务器请求服务,并显示相应的提示,主要的命令有:CONNECT??IP地址??端口号指定游戏服务器的IP地址和端口号,连接到服务器。响应:连接成功/失败。LOGIN 用户名用户登录,报告服务器玩家的名字。响应:成功/失败。COUNT 表达式计算用户输入的表达式。响应:对了/错了/超时。LISTTOP10请求显示TOP10排行榜。响应:显示TOP10排行榜。EXIT退出游戏。2 系统概要设计2.1 实现环境采用基于.NET平台的c#语言进行编写,分成服务器端和客户端两部分完成本次设计,基于SOCKET实现客户端与服务器端的连接、交互,使游戏可以正常运行。2.2 模块设计2.2.1 客户端界面设计连接区:输入服务器端的地址及其端口,与服务器建立连接,为客户端用户登录服务器做准备。登录区:输入客户端用户的用户名,登录服务器后才能玩24分游戏与查看积分前十的玩家排行。出题区:用户点击产生四个数按钮后,客户端向服务器发出获取数字的请求,并开始计时。计时区:在用户点击产生四个数按钮后,计时器开始工作,计时器变为0时,游戏结束。查看前十:用户登录服务器后,可查看服务器端记录的积分前十的玩家排行。答题区:用户可以在此提交表达式给服务器,用户当前的积分也在此给出,若表达式结果为24,则用户积分加1,否则,减1。2.2.2 客户端代码设计SendMessage:向服务器发送数据。将string类型消息转换为byte类型后,通过socket套接字向服务器发送数据。ReceiveMess:接收服务器的数据。将byte类型消息转换为string类型,根据服务器返回的消息,判断是返回的关于那部分命令的,做出相应的操作,比如:返回的关于用户请求查看积分排名前十的信息,那么答题区的listbox中会添加前十的用户的积分和名字信息。connbtn_Click:连接按钮的点击事件。获取指定服务器的IP地址和端口,连接服务器,创建并启动线程接收服务器的信息。loginbtn_Click:登录按钮的点击事件。向服务器发送登录请求。getnumbtn_Click:获取四个随机数按钮的点击事件。向服务器请求四个随机数,并开始计时。submitbtn_Click:提交表达式按钮的点击事件。停止计时,并向服务器提交表达式。exitbtn_Click:断开连接按钮的点击事件。断开与服务器的连接。topbtn_Click:查看排名前十按钮的点击事件。向服务器请求查看前十信息。timer1_Tick:计时器。2.2.3 服务器界面设计设置监听端口:指定服务器的端口。Listbox:存放出当前连接服务器的客户端信息。Textbox:存放服务器发出的各种信息。2.2.4 服务器代码设计startbtn_Click:开始服务按钮的点击事件。获取指定的服务器端口,创建监听套接字,绑定IP地址和端口。创建并启动一个监听线程。ClientAccept:接收客户端连接。创建一个套接字与客户端通信,创建并启动一个通信线程。RecevieData:接收客户端信息。将byte类型消息转换为string类型,并根据信息作出相应操作,比如:getnum,服务器产生四个随机数并返回给客户端;submit,服务器计算客户端提交的表达式,若结果为24,则用户积分加1并返回给客户端,否则,积分减1.log:向用户信息列表中添加用户信息。gnum:产生四个随机数,并将四个数字以消息的方式发送给客户端。sub:计算用户提交的表达式,判断结果是否为24,并判断结果相应地修改用户积分。GetTopTen:通过冒泡法选出排名前十的用户积分和用户名,将信息发送给客户端。SendToClient:将string类型的信息转换为byte类型发送给客户端。stopbtn_Click:停止服务按钮的点击事件。服务器停止工作。SendtoAll:发送给所有连接本服务器的客户端信息。3 系统关键代码3.1 客户端代码3.1.1 连接服务器private void connbtn_Click(
您可能关注的文档
- SE800培训.pptx
- 第二节线形动物.ppt
- ShaderForge全翻译.docx
- SLAM调研之ROS.pptx
- 小型机存储与AIX.pptx
- 小学奥数思维训练-最值问题二通用版.docx
- 第二节学会负责.ppt
- 小学二年级S版语文上册期中复习.pptx
- 第11章合理营养指导.ppt
- 第二节产生感应电流的条件111.ppt
- 专题04 天气与气候(期末真题汇编,广东专用)(解析版).docx
- 专题04 中国的经济发展(百题精选)(期末真题汇编)(原卷版).docx
- 专题05 建设美丽中国(专项训练)(原卷版).docx
- 专题05 建设美丽中国(专项训练)(解析版).docx
- 专题05 居民与文化 发展与合作(百题精选)(期末真题汇编)(解析版).docx
- 2024年下半年教师资格考试中学《教育知识与能力》真题(含答案和解析).docx
- 专题05 居民与文化 发展与合作(百题精选)(期末真题汇编)(原卷版).docx
- 专题05 居民与文化 发展与合作(期末真题汇编,广东专用)(解析版).docx
- 专题05 居民与文化 发展与合作(期末真题汇编,广东专用)(原卷版).docx
- 统编版七年级语文上册课件《雨的四季》.pptx
原创力文档


文档评论(0)