当前位置:文档之家› C++程序设计课程设计任务书(10)

C++程序设计课程设计任务书(10)

C++程序设计课程设计
任务书
盐城工学院信息学院
2012年6月
C++程序设计课程设计任务书
一、课程设计目的
1、巩固并加深学生对C++语言程序设计知识的理解;
2、培养学生面向对象的程序设计思想,使学生认识面向过程和面向对象两种设计方法的区别;
3、进一步掌握和应用VC++ 6.0集成开发环境;
4、提高运用C++语言解决实际问题的能力;
5、初步掌握开发小型实用软件的基本方法,能独立设计、实现具有实际功能的小系统;
6、掌握书写程序设计开发文档的能力(书写课程设计实验报告)。

二、课程设计要求
1、根据分组情况对规定的课程设计题目要求进行分析、设计;
2、利用Visual C++独立编写程序代码,并调试程序使其能正确运行;
3、源程序要有适当的注释,使程序容易阅读;
4、设计完成的软件要便于操作和使用,采用模块化设计方法,可以根据实际情况选择SDI、MDI或Dialog-Based方式实现系统;
5、要求系统的用户界面尽量简单、合理,鼓励学生自动增加新功能模块(视情况可另行加分);
6、完成并提交课程设计报告,具体要求见相关说明文档。

三、课程设计内容
每个学生根据分组情况,从教师提供的课程设计题目中选择题目,独立完成,不可任意更换题目。

1、第一组
课题名称:工资管理系统
说明:一个员工工资管理程序,有新建、存储、显示、修改和删除的功能。

要求:
1) 利用工号区别员工身份,工号用字符数组的形式,从000001开始编号,该工号不能人工修改,是由计算机自动根据录入的先后复制的,录
入数据时不必输入工号。

2) 可以选择现实的多种排序形式,如按姓名的顺序、工资总额的顺序、职务工资或奖金的顺序。

3) 每次显示时,将所有要显示数据的工资总额、职务工资总额、奖金总额一起计算显示。

4) 可以根据工号或姓名修改、删除数据,在修改、删除时现要求用户确认,确认后再进行操作。

2、第二组
课题名称:三子连珠游戏
说明:模仿五子棋的形式,有一方三子连成一线即获胜。

要求:
1)玩家可以设置棋盘的大小。

2)加入悔棋的功能,要求任一方可以在对方下棋后悔改一步,即将对方当前步和本方上一步删除,本方重新下棋。

3、第三组
课程名称:个人财政管理系统
说明:管理个人的财政支出。

要求:
1)程序中的收支情况按时间顺序存放,将其放入一个文件中,每次运行程序时首先打开这个文件,程序运行完毕时将更新的记录放回文件中。

2)可以按时间的范围检查账目,记在主菜单中增加检索的功能选项,输入时间范围即可打印出详细报表。

3)可以修改、删除某笔收入或支出。

4)当输入时间发生错误(如月份超过12等),要求重新输入正确的时间;当结余的数目为负数时,打印出信息,警告已经超支。

5)显示时,要求每笔收入和支出都要重新统计当前情况下的盈余数目。

4、第四组
课程名称:日历管理器
说明:模仿现实生活中的挂历,显示日历。

要求:
1)当前页以系统当前日期的月份为准,显示当前月的每一天(显示出
日及对应的星期几),当系统日期变到下一月时,系统自动翻页到下一月。

2)可以实现日期的加法运算,即在日期相加的菜单选项中增加日期加天数,结果为新日期。

3)根据用户输入的年份,自动产生每个月的日期列表。

包括输入非法数据(如负数、日期超过31天等情况)的识别显示功能。

4)自定义显示日历的形式,如显示星期及英文形式的月份的功能。

5、第五组
课题名称:二十一点游戏
说明:模拟21点扑克牌游戏,玩家最多可以要5张牌。

但如果牌的点数之和超过21,则自动出局;在不超过21点的情况下,玩家和庄家比牌的点数的大小,大者为赢家。

要求:
1)设定针对不同玩家的权限:高级玩家可以查看下一张牌,即按H 键,然后要求输入密码,密码正确可以看牌,并决定是否要牌;超级玩家可以查看所有庄家的所有牌面,并输入自己想要的牌,有赢无输,为保密起见,输入想要的牌之后立刻清屏。

2)每次要完牌后可以重新设定赔率,只能加注。

也就是说如果牌好,可以加大赌注。

6、第六组
课题名称:通讯录管理软件
说明:通讯录至少包括以下数据项:姓名,地址,电话,邮编,E-mail 等。

要求:
1)通讯录编辑(添加、删除);
2)按不同的项进行查找;
3)对已存在的通讯录按不同的项排序;
4)将通讯录写入文件;
5)从文件读入通讯录。

7、第七组
课题名称:计算器
说明:实现一个计算器功能,用户根据程序提示,输入数字,选择要进行的运算,可以进行加减乘除等运算。

1)用“计算器”的标准视图执行简单的计算。

2)用其科学型视图执行高级的科学计算。

8、第八组
课程名称:迷宫旅行游戏
说明:用户从键盘输入4位不重复的数,来匹配计算机给出的4位随机数,若数字和位置均等同,表示用户赢了。

每猜一次,计算机均给出提示信息(x,y),x表示数字、位置都匹配的个数,y表示数字匹配但位置不匹配的个数。

要求:
1)设计菜单选项,可以在程序中输入任意大小的迷宫图。

2)可以随意选择玩家的初始位置,也可以由计算机随机选择。

3)记录玩家旅行记录。

4)设定悔步功能。

9、第九组
课题名称:学籍管理系统
说明:学生学籍记录以下信息:姓名、家庭住址、学号,成绩、性别等。

可以用能表示学生学籍信息的类存储数据。

要求:
1) 具备对学籍的管理功能(添加、删除、排序)
2) 具备按姓名、学号查询学生学籍的功能。

10、第十组
课程名称:猜数游戏
说明:用户从键盘输入4位不重复的数,来匹配计算机给出的4位随机数,若数字和位置均等同,表示用户赢了。

每猜一次,计算机均给出提示信息(x,y),x表示数字、位置都匹配的个数,y表示数字匹配但位置不匹配的个数。

要求:
1)设计友好的中文用户交互界面。

2)按H键,可得到更详细的帮助信息。

3)按K键后,可以查看计算机所给的4位数,但查看前需要输入密码,密码自定。

4)猜的结果以分值的形式给出,每猜错1次扣100分,若猜对1个数,奖
5)每次游戏结束后将分值存盘,文件名自定。

四、课程设计报告的内容
1、课程设计名称、班级号、学号、学生姓名和课程设计起止日期等
2、课程设计目的
3、课题总体设计:系统的需求分析、功能描述、功能模块图、系统流程图等
4、详细设计说明:各模块的参数说明及相互调用关系、各功能模块算法流程图等
5、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施
6、课程设计心得体会
7、附录1:参考文献
8、附录2:源程序清单(锯齿型书写格式,带有较详细的注释)
五、课程设计上机安排及分组情况
1、分组情况:
第一组第二组第三组第四组第五组
瞿昊包遵民杨扬缪桥伟夏晶晶
李硕马文涛徐迎亚王东陶焘
尹宁祥葛金楠朱佳超秦飞丁梦娇
倪磊蒋鑫陆敏杰陈志翔
施利华张昊蔡杨潘雷周凌云第六组第七组第八组第九组第十组
王海栋王首辰穆逸袁智慧贲雅菁
杨烈冯逸波罗正洲芦毅尹富仁
孙岑黄朋邹辉杨袁周成杰
丁森杨慧马恒钱碧柱成孝波
胡政吴丹许季柏季磊磊秦煊寓
2、上机地点:东区试验楼,四楼,一机房
3、上机时间:6月27日~7月8日
4、指导教师:王榕
六、课程设计成绩评定办法
1、评分范围及权重:
(1)课程设计报告(40%);
(2)课程设计源程序(40%);
(3)平时成绩(20%)。

2、课程设计报告评定办法:根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格。

3、课程设计源程序评定办法:根据课程设计完成情况,必须有可运行的软件,学生能面对教师提问并能熟练地解释清楚自己的程序。

4、平时成绩评定办法:根据平时上机考勤及表现,教师将不定期检查学生进度,学生不得以自己有私人电脑为借口而不来上机。

注意:所有材料于最后一次上机结束后提交,否则不予评定成绩。

相关主题