面向对象程序设计(C++)实验指导 - 精简版 - befine

发布时间 : 星期三 文章面向对象程序设计(C++)实验指导 - 精简版 - befine更新完毕开始阅读

实验七 函数模板与类模板(2课时)

实验目的和要求:

1.掌握函数模板及其声明方法。 2.掌握模板函数及其生成方法。 3.学习类模板的声明与使用方法。

预习内容:

模板函数及其生成方法

实验内容:

1.定义函数模板实现数组的冒泡排序,并在主函数中调用模板函数测试该算法。 2. (选做)定义类模板实现栈的基本操作,栈的数据结构用带表头结点的单向链表实现。 3. (选做)利用栈的类模板实现将输入的整数转换成八进制并输出。

实验八 异常处理(2课时)

实验目的和要求:

1.正确理解C++的异常处理机制。 2.学习异常处理的定义和执行过程。

预习内容:

异常处理的定义和执行过程

实验内容:

1. 编写一个程序对一个任意维数组进行键盘赋值,并能够处理数组下标的溢出异常,观察程序执行流程。

2.编写一个只能容纳10个整数的队列,当入队元素超出队列容量时,就抛出一个队列已满的异常;如果队列已空还要从中取出元素,就抛出一个队列已空的异常。

实验九(综合实验):虚拟新生信息管理系统(8学时)

实验目的和要求:

1) 巩固和加深学生对C++课程的基本知识的理解和掌握; 2) 掌握C++编程和程序调试的基本技能;

3) 利用C++进行简单软件设计的基本思路和方法; 4) 训练学生综合运用面向对象程序设计的能力; 5) 提高运用C++解决实际问题的能力; 6) 掌握书写程序设计说明文档的能力。 预习内容:

动态内存分配,类与对象的定义,类的静态成员,类的继承方式,派生类对象与基类对象的关系等面向对象程序设计知识。 实验内容:

设计简易新生信息管理系统 (1) 已知技术参数或设计前提 1、大学有若干个学院,每个学院有很多新生。有作为自然人的基本信息(如性别、年龄等等),有作为学生的基本信息(学号,成绩等)。 2、每个学生都有记录的高考成绩(大学生);或者考研成绩。 3、每个同学都有自己的名字(包括同名)、学号,每个人都是固定的,且学号唯一,学号格式按照我校现有格式记录。

4、学校每学期都有期中期末考试,记录学生成绩是一个较大的工程。 5、在校学生可凭借本人学号和密码查询本人考试成绩及排名。

6、专业人员可凭密码查询学生所有信息,包括作为基类对象的信息。

(2) 设计内容及要求

为简化设计,该系统只针对一年级新生,建立新生信息系统。尽可能的用面向对象程序设计的思想和方法,开发想象力,自己设计合理的数据和操作。按照继承体系来设计学生信息。基类为person,person派生Student,Student派生Graduates和UnderGraduates. 可以不按照此体系,但是必须采用某种合理的继承结构。

(3) 采用win32 控制台应用程序的形式开发

程序启动后提示画面如下(仅作参考,请自己发挥??): 1、 录入成绩? Enter 1; 2、 修改成绩?...... ; 3、 删除成绩?...... ; 4、 查询成绩???; 请选择??;

操作完成后,退回到提示画面等待输入。

实验技术性要求

1) 实现学生数据录入、修改、删除以及按平均分、单科、总分排名次(2门

课程) ;

2) 数据录入、修改、删除的工作只能由专门人员负责; 3) 在学校专门人员录入、修改成绩等完成以后,学生便可查找自己的信息; 4) 查找成绩时需要输人本人学号及口令(预设); 5) 学生本人可以修改口令; 6) 适当加入异常的处理;

7) 基类和派生类功能相似的函数注意设为虚函数。 实验报告要求

1) 课程设计名称、班级号、学号和学生姓名; 2) 课程设计目的和要求; 3) 课程设计任务内容; 4) 详细设计说明; 5) 软件使用说明;

6) 课程设计心得与体会;

7) 附录1:部分程序清单(带有较详细的注释)。

联系合同范文客服:xxxxx#qq.com(#替换为@)