C++MFC聊天室程序[2024-07-01]
2023-2024学年第二学期《网络编程》考查方案
一、考查题目
从下面6道题中任选1道试题,根据题目要求完成程序设计和期末考查报告,期末考查报告见附件。
-
利用MFC实现基于select模型的聊天室。具有操作便捷的交互界面。支持多个用户在线交互,每个客户端能够看到所有用户发送的消息。
服务器端功能要求:
(1)服务器端能够实时显示当前连接的客户端数量。(20分)
(2)当有新客户端连接时,能够显示客户端ip地址、端口号等信息。(10分)
(3)将客户端发来的信息实时显示到聊天界面。(10分)
客户机端功能要求如下。
(1)主动发出连接请求与服务器建立连接,能够显示已连接到服务器端的所有客户端发送的消息。(20分)
(2)能够每条消息发送时时间。(10分)
(3)当信息较多时,能够翻页或滚屏显示。(10分)
(4)能够将聊天信息导出、保存到文本文件中。(20分) -
利用MFC实现基于异步I/O模型的聊天室。具有操作便捷的交互界面。支持多个用户在线交互,每个客户端能够看到所有用户发送的消息。
服务器端功能要求:
(1)服务器端能够实时显示当前连接的客户端数量。(20分)
(2)当有新客户端连接时,能够显示客户端ip地址、端口号等信息。(10分)
(3)将客户端发来的信息实时显示到聊天界面。(10分)
客户机端功能要求如下。
(1)主动发出连接请求与服务器建立连接,能够显示已连接到服务器端的所有客户端发送的消息。(20分)
(2)能够每条消息发送时时间。(10分)
(3)当信息较多时,能够翻页或滚屏显示。(10分)
(4)能够将聊天信息导出、保存到文本文件中。(20分) -
利用MFC实现基于事件选择模型的聊天室。具有操作便捷的交互界面。支持多个用户在线交互,每个客户端能够看到所有用户发送的消息。
服务器端功能要求:
(1)服务器端能够实时显示当前连接的客户端数量。(20分)
(2)当有新客户端连接时,能够显示客户端ip地址、端口号等信息。(10分)
(3)将客户端发来的信息实时显示到聊天界面。(10分)
客户机端功能要求如下。
(1)主动发出连接请求与服务器建立连接,能够显示已连接到服务器端的所有客户端发送的消息。(20分)
(2)能够每条消息发送时时间。(10分)
(3)当信息较多时,能够翻页或滚屏显示。(10分)
(4)能够将聊天信息导出、保存到文本文件中。(20分) -
利用MFC实现基于重叠I/O模型的聊天室。具有操作便捷的交互界面。支持多个用户在线交互,每个客户端能够看到所有用户发送的消息。
服务器端功能要求:
(1)服务器端能够实时显示当前连接的客户端数量。(20分)
(2)当有新客户端连接时,能够显示客户端ip地址、端口号等信息。(10分)
(3)将客户端发来的信息实时显示到聊天界面。(10分)
客户机端功能要求如下。
(1)主动发出连接请求与服务器建立连接,能够显示已连接到服务器端的所有客户端发送的消息。(20分)
(2)能够每条消息发送时时间。(10分)
(3)当信息较多时,能够翻页或滚屏显示。(10分)
(4)能够将聊天信息导出、保存到文本文件中。(20分) -
利用MFC实现基于完成端口模型的聊天室。具有操作便捷的交互界面。支持多个用户在线交互,每个客户端能够看到所有用户发送的消息。
服务器端功能要求:
(1)服务器端能够实时显示当前连接的客户端数量。(20分)
(2)当有新客户端连接时,能够显示客户端ip地址、端口号等信息。(10分)
(3)将客户端发来的信息实时显示到聊天界面。(10分)
客户机端功能要求如下。
(1)主动发出连接请求与服务器建立连接,能够显示已连接到服务器端的所有客户端发送的消息。(20分)
(2)能够每条消息发送时时间。(10分)
(3)当信息较多时,能够翻页或滚屏显示。(10分)
(4)能够将聊天信息导出、保存到文本文件中。(20分) -
利用MFC实现基于多线程的聊天室。具有操作便捷的交互界面。支持多个用户在线交互,每个客户端能够看到所有用户发送的消息。
服务器端功能要求:
(1)服务器端能够实时显示当前连接的客户端数量。(20分)
(2)当有新客户端连接时,能够显示客户端ip地址、端口号等信息。(10分)
(3)将客户端发来的信息实时显示到聊天界面。(10分)
客户机端功能要求如下。
(1)主动发出连接请求与服务器建立连接,能够显示已连接到服务器端的所有客户端发送的消息。(20分)
(2)能够每条消息发送时时间。(10分)
(3)当信息较多时,能够翻页或滚屏显示。(10分)
(4)能够将聊天信息导出、保存到文本文件中。(20分) -
利用MFC实现基于SMTP协议和pop协议的邮件收发客户端。具有操作便捷的交互界面。客户端既能接收邮件也能发送邮件。具体要求如下:
(1)该客户端同时集成邮件的收发功能。(30分)
(2)有收件箱功能。(25分)
(3)有发件箱功能。(25分)
(4)有草稿箱功能。(20分)
二、成绩评定标准
将依据程序功能和开题报告的完成情况评分,程序功能实现占期末考查总成绩的60%,开题报告占期末考查总成绩的40%。
三、提交方式
电子版材料:将调试成功后的项目文件夹(项目名称中应包含姓名缩写)和期末考查报告(期末考察报告以“学号-姓名”命名)进行压缩,压缩包以“题号-学号-姓名”命名,如学号为123456的张三同学选了第1题,压缩包以“1-123456-张三”命名。7月5日上午8:00-下午5:00使用校园网交到ftp://10.8.124.144。
纸质材料:纸质版考查报告由各班学习委员收齐后,7月5日下午5:00前交到张衡楼410。请学习委员交材料前提前联系,避免跑空。
四、其他
使用visual studio 2015开发工具,编程语言使用C或C++。
不得抄袭,如有雷同,均计0分。
源码联系UP主 -> https://space.bilibili.com/329101171