资源描述
《面向对象的程序设计课程设计》教学大纲课程设计名称:《面向对象的程序设计》课程设计
课程编号:05110124学院(系):计算机系专业:计算机科学与技术、信息管理与信息系统
学时数或周数:2周30学时学分数:2大纲主撰人:编写日期:2005.3
一、设计目的
课程设计是课程教学中的一项重要内容,是完成教学计划到达教学H标的重要环节,是教学计划中 综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手 能力、提高学生全面素质具有很重要的意义。
本次课程设计通过设计和实现几个应用程序,到达以下目标:
使学生能够比拟熟练地掌握C++语言的基本语法规那么:
熟练掌握基本的面向对象的程序设计方法,如类的实现、创立类的实例一对象、实现类的继承等: 掌握各种面向对象的程序设计技术,如多态的实现、运算符重载、使用C++标准库等。
掌握在VC++平台上进行程序设计和调试的方法。
二、总体要求
学生利用学到的面向对象的基本原理和C++语言语法以及编程技巧,通过灵活应用Visual C++6.0 集成开发环境进行应用程序和系统的开发设计,掌握可视化程序设计的基本方法和步骤,强化巩固已有 编程知识,训练新的设计与编程思路,帮助熟悉程序编写,及时追究错误,具体要求如F:
1 .整个课程设计的各个环节学生自己动手。
2 .前五个题目是C++的基本知识,每个学生都必须完成。
3 .后五个题目可作为选做内容,每个学生都必须选做一题。
4 .写出相应的算法分析和源代码。
5 .要求上机调试通过。
6 .对课程设计进行总结,撰写课程设计报告。
三、时间安排
第1-2周的周一至周五,每天3个学时,合计10天,共30学时。
四、地点
计算中心5楼机房。
五、组织管理
1 .系领导组织抽查、考勤
2 .教师分班负责六、设计内容
本次课程设计以机械工业出版社出版的《C++程序设计一课程设计》为参考;
共包含10个设计题目,比拟完整的涵概了 C++语言的各种程序设计技术,现分别介绍如下:
题目一:使用类和对象设计回应程序
设计类就是根据数据封装的要求,抽象出合适的类。即如何选择数据成员和成员函数。本设计题目 的任务就是根据测试程序极其输出结果,设计一个满足要求的类。
本设计题目还涉及到类的特殊函数:构造函数和析构函数的声明和实现。
本设计题目的是使学生加深对面向对象的程序设计思想的理解,训练设计类的基本技术。
题目二:设计菜单项选择择趣味程序
菜单是应用程序的界面,用来和用户进行交互;控制语句用来改变程序执行的顺序,是实现结构化 程序设计的基础。本设计题目的任务是设计一个比拟实用的菜单,通过菜单项选择择不同的功能。
此题目的设计分两步:首先设计一个含有多个菜单项的菜单演示程序,然后再为这些菜单项配上相 应的功能。
此题目的目的是训练使用类和类的数组。
题目三:通过组合和派生构成新的类
本设计题目的任务是使用Point类产生Line类。可以通过包含及派生两种方法实现,并要求分别给 出使用模板实现的程序。
本设计题目的是使学生掌握在不同的实现方法中,如何设计相应的构造函数和复制构造函数,进一 步理解程序调用它们及析构函数的执行顺序。共有继承的赋值兼容规那么是一个重要规那么。通过这个设计, 可以进一步理解这个概念,为理解虚函数的多态性打下基础。
本设计包含4个题目,可以根据教学要求取舍。
题目四:职工信息表
本设计题目的任务是设计职工信息表,并由此产生一个信息简表。这里使用数组,利用赋值兼容规 那么实现简表,并使用虚函数实现多态性,完成显示不同简表信息的任务。本设计题目还给出使用菜单和 向量实现的设计方案,以便进一步理解向量的使用方法,这个要求可以作为选题工程,也可以根据教学 需要加以取舍或增加新的要求。
本设计题目的目的是让学生熟悉向量的使用方法,进一步理解和掌握C++的多态技术及实现方法。
题目五:后缀表达式求值
本设计题目的任务是设计一个堆栈模板类,并使用该模板设计后缀表达式求值,模拟一个计算器操 作。
这个设计题目的目的是进一步熟悉模板及模板之间的关联方法,设计本身并不难,可增加测试要求, 理解后缀表达式。
题目六:求解有理数分式方程
本设计题目的任务是设计一个Rational (有理数)类,用来求解有理数分式方程。开发Rational类 的FI标就是创立一种类型,该类型的对象要向使用基本类型定义的对象那样,这就要求进行运算符重载。
本设计题目的目的是使学生加深对运算符重载技术的理解和掌握。
题目七:字符串类
本设计题目的任务是设计一个自己的字符串类。字符串数据抽象表示的对象是字符序列,字符串在 许多与用户进行文本方式交互的应用系统里常常使用。字符串类的开发不仅说明了建立一个比拟复杂的 数据类型的过程,同时也介绍了 C++语言的一些重要特性,帮助学生强化对面向对象程序设计理念和运 算符重载技术的理解和掌握。
题目八:统计学生成绩
本设计题目的任务是进一步熟悉文件操作和运算符重载,这是两个非常有用而重要的技术,需要多 多练习。编制实用程序都离不开文件存取,应给予足够重视。
可以在本设计方案的基础上改进,也可以重新设计。希望学生能在此基础上进行较大的改进,以获 得更好的成绩。
题目九:通信录
本设计题目的任务是设计一个实用的小型通信录程序,具有查询和删除功能,并且能够翻开或修改 指定文件及将多个文件组成一个文件。完全使用类来实现,充分表达面向对象的程序设计特点。此题目 使用了 C++标准库提供的list类来实现链表的结构,非常简单,C++推荐使用标准库。
本设计题目的目的是使学生学会使用C++标准库中预定义的各种容器类,这是目前编程的方向。
题目十:学生成绩管理程序
本设计题目的任务是设计一个实用的小型学生成绩管理程序,要求不用链表,而用向量来设计这个 程序。它有查询和检索等功能,并且能够对指定文件操作,也可将多个文件组成一个文件。
本设计题目的目的是使学生进一步掌握使用C++标准库中预定义的各种容器类的方法;并学习使 用函数指针。
课程设计总结报告包括以下内容:
1 .程序设计的主题说明;
2 .程序设计的总体框图;
3 .各设计步骤的分析与代码设计;
4 .系统调试的方法和步骤;
5 .系统设计的改进意见:
6 .将设计报告整理成文。
七、考核方式
通过设计辩论方式,并结合学生的动手能力,独”分析解决问题的能力和创新精神,总结报告和答 辩水平以及学习态度综合考评。成绩分为优、良、中、及格和不及格五等,分数分配比例如下:
1)分析设计准备阶段,考查程序设计的可用性,实用性,通用性,可扩充性等方面(40%)
2)编程调试阶段,考查学生的动手能力和创新能力(40%)
3)总结报告和书写说明书(10%)
辩论水平(10%)
展开阅读全文