《面向对象程序设计》任务书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计》课程设计任务书
一、课程设计总体要求
本次课程设计是对前面学过的C语言程序设计的编程思想以及编程方法的一个回顾和延伸,学生确定设计题目后,要明确本次课程设计所要用到的技术点,回顾之前学习的C语言并进一步学习C++程序设计语言,或者到网上搜索以及查阅相关的书籍来搜集资料。
通过编写一个基于C++的应用系统综合实例,来掌握C++语言编程技巧。
二、设计任务与要求
本次课程设计的题目均采用VC++ 6.0来开发。避免抄袭,让学生真正锻炼自我。要求每个学生必须参加,并完成如下各项课程设计任务:
1. 要求每个学生认真阅读本面向对象的程序设计任务书,理解课程设计的目的和任务;
2. 要求每个学生根据自己的实际情况选择一个题目,实际动手完成这个题目,编写出程序代码,并调试通过;
3. 每个同学选择一个题目,多名同学选择同样题目时,独立完成,程序代码不可相同。部分难度较大题目,最多可由两名学生共同完成;
4. 要求每个学生完成课程设计后撰写《面向对象的程序设计报告》,可以按照任务书后面附带的课程设计报告模版的格式实际撰写。
5. 要求每位学生必须在上机前做好充分准备,每次上机必须目的明确,必须事先编写好程序代码,然后在规定的时间和地点上机调试。由于机房电脑重启后进行恢复,每位学生要对自己的程序进行备份。
6. 允许学生在给出可供选择题目之外自己选择题目,但要经指导教师同意。
三、课程设计实施步骤
1.在课程设计开始时,公布此课程设计任务书,由学生进行选题。
2.教师根据需要安排合适的时间、地点进行答疑。
3.教师要认真检查学生完成的程序进展情况。
4 教师要指导学生撰写符合规范的《面向对象的程序设计报告书》。
5.每个学生必须参加课程设计答辩,针对课程设计的内容回答提问。
四、考核办法
首先检查完成后的程序能否正常运行和得出希望的结果,程序检查通过后再检查所撰写的《面向对象的程序设计报告书》,最后参加课程设计答辩,根据报告的质量及面试的结果给出学生课程设计的成绩。
五、考核评分标准:
1. 程序功能的实现(要求演示及答辩)进行考核:
无任何论文,无程序,得0分;
论文混乱,没有思路,程序不能运行,不及格;
论文描述清晰,程序实现了基本功能,中(60-75分);
论文描述清晰准确,思路清晰,程序实现了要求的所有功能,良好(75-90分);
论文完备,设计合理有创新,报告清晰明确,深入分析了自己进行实验的体会感想,程序实现了全部功能,功能完善,并有其它的创新实现,优秀(90-100分)。
2. 如果发现两名或更多同学的课程设计相同部分过多,特别是程序的源代码相同部分达到或超过90%,则认定为抄袭,成绩评定为不及格。如果发现与现有技术书籍或网上资料相同部分过多,特别是程序的源代码相同部分达到或超过80%,也认定为抄袭,成绩评定为不及格。允许参考同学的工作,允许参考现有技术书籍或网上的资料,但要有自己的不同或改进之处,可以利用已有程序的代码,但要自己重新组织,调试通过并对程序理解正确。
六、参考题目及要求:
1、编写一个计算器程序
要求:
使用图形用户界面,由1名学生独立完成;
界面模拟Windows中的计算器程序;
实现基本数学运算、函数等功能:加、减、乘、除、正弦和余弦运算;
实现要点:添加相关组件并进行按钮事件处理和键盘事件处理。
4、万年历系统
要求:
使用图形用户界面,由1学生独立完成;
万年历功能:
(1)日历显示功能。能根据系统日期进行初始化,如果没有任何输
入,则显示系统日期所在月份的月历。
(2)日历查询、闰年判断功能。输入日期进行查询,显示查询日期所在月份的月历,还将显示所在年份是否为闰年;
(3)参数检查功能。如果输入日期不合法,查询将被拒绝,并显示提示信息。
5、电子时钟
使用图形用户界面,由1学生独立完成;
电子时钟要求:
(1)时间显示功能。能根据系统时间进行初始化,显示当前时钟;
(2)设置时间,可以更改小时、分、秒;
(3)参数检查功能。如果输入数据为非法时间数据,应给出提示。
6、通讯录管理
使用图形用户界面,可由1~2名学生共同完成;
编写一个简单的通讯录管理程序。通讯录记录有姓名,地址(省、市(县)、街道),电话号码,邮政编码等四项。
程序应提供的基本基本管理功能有:
添加:即增加一个人的记录到通信录中
显示:即在屏幕上显示所有通信录中的人员信息,应能分屏显示。
存储:即将通讯录信息保存在一个文件中。
修改:可修改一个人的除姓名外其它信息。
7、研究生初试录取
要求:使用图形用户界面,可由1~2名学生共同完成;
问题描述
研究生考试课程为4门,其中数学、外语、政治为统一命题,而专业基础课则根据不同的专业由招生学校自行命题。国家对初试录取分数有总分要求(如某一年要求4门课总分应达到310分),另外还有对每门课的最低分数要求(如总分为100的试卷最低应达到40分,总分为150的试卷最低应达到65分)。编程统计初试合格的人数,并按总分由高到低的顺序输出合格考生的信息。
基本要求
程序运行时首先要求输入:考生姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩。这些原始数据应保存到一个文件中。然后输入:录取的总分要求,各课程的最低分数要求。输出要求:过线考生的姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩及总分,这些信息应存放到另一个文件中。
实现提示
可定义一个考生类存放有关信息和实现相应的操作。分数线数据(总分要求和各门课程的要求)可定义另外的类来存放,但应能被考生类及其派生类直接访问。
8、足球联赛积分
要求:使用图形用户界面,可由1~2名学生共同完成;
问题描述
足球联赛采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联赛结束后进行,联赛未结束则两队名次并列,本程序不做这方面要求)。试编一程序统计最近一轮比赛后,各队积分及排名。
基本要求
设积分表结构如下:队名(不超过15个字符),已比赛的场数,赢的场数,平的场数,负的场数,进球数,失球数,积分。积分表放在正文文件中。最近一轮的结果从键盘输入,其形式为:主队名(可用代码),客队名(可用代码),主队得分(即进球数),客队得分(即进球数)。程序应根据此轮结果修改各队的积分和名次,所得的最新记分表仍在原积分文件中并同时在屏幕上显示。
实现提示
定义一个球队类,每个球队是均是此类的对象。由于联赛中参赛的队伍数是固定的,因此可用对象数组来实现。每输入两个队的比赛成绩,则相应的队的有关数据即可进行修改,比赛成绩录入完成,调用联赛排序方法(对象数组作为参数)排出名次并输出。