收藏 分销(赏)

《C++程序设计课程实验》课程教学大纲.docx

上传人:二*** 文档编号:4533000 上传时间:2024-09-27 格式:DOCX 页数:12 大小:89.06KB
下载 相关 举报
《C++程序设计课程实验》课程教学大纲.docx_第1页
第1页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、C+语言程序设计实验教学大纲一、课程基本信息二、教学目标中文名称C+语言程序设计英文名称C+ Programming适用专业计算机科学与技术先修课程计算机导论课程类别专业核心课修读性质必修学分/学时2学分/34学时考核方式考查本课程主要介绍程序的基本方法,借助C+语言讲授OOP的基本理论和方法,是学习计 算机后续课程的一门重要的核心课程。通过该课程的学习,要求同学们掌握程序设计的基本 知识和基本技能,了解面向对象分析、设计和实现的过程和基本方法,通过理论与实践相结 合,使学生理解并掌握面向对象程序设计的基本方法和技术,为进一步学习、研究、开发与 学习本专业相关的计算机软件打好良好的基础。三 教

2、学内容实验工程一:Visual C+6.0开发环境应用入门实验(2学时).实验属性:验证实验.修读性质:选开1 .教学目标了解Visual C+6.0的特点,熟悉了解Visual C+6. 0的开发环境;(2)学习使用Visual C+6.0编写标准的C+控制台应用程序。2 .实验方法上机操作5实验仪器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本6,实验内容使用Visual C+来建立一个非图形化的标准C+程序,用公式法求解PI的数值,并尝 试利用其他方法求解并获得相同的结果。n =16arctan(l/5) -4arct

3、an(1/239)其中 arctan(x)=x-x3/3+x5/5-x7/7+求兀二?7.成绩评定上机测试通过、提交实验报告。实验工程二:C+简单程序开发实验(2学时).实验属性:验证实验2,修读性质:选开.教学目标(1)会编写简单的C+程序;(2)复习基本数据类型变量和常量的应用;(3)复习运算符与表达式的应用;加元素,queue:pop()从非空的队列中删除最后一个元素,queue: :empty()判断队列是否 为空,queue: :back()返回非空队列的最后一个元素,queue: :front ()返回非空队列的第一 个元素,queue:size()返回队列中元素的个数,请构造一个

4、int类型的队列,对这个队列 应用上述几个函数,体会队列这种数据结构的特点和其成员函数的用法。(2)对于一个包含特定个数整型数据的数组A,对于从键盘输入的任意数,使用C+ 标准模板库中的find。查找在A中的位置,使用sort。来对数组进行升序或降序排列,排 序前和排序后的结果使用copy。输出。7 .成绩评定上机测试通过、提交实验报告。实验工程十六:流内库与输入、输出实验(2学时)L实验属性:设计实验2,修读性质:选开.教学目标(1)熟悉流类库中常用的类及其成员函数的用法;(2)学习标准输入输出及格式控制;(3)学习对文件的应用方法(二进制文件、文本文件)。8 .实验方法上机操作5实验仪器设

5、备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本实验内容(1)观察以下程序的输出,注意对输出格式的控制方法。(下一页)(2)编写程序,用文本方式翻开指定的一个文件,在每一行前加行号。(3)使用实验10中的学生类数组,输入数据并显示出来,使用I/O流用二进制方式把 此数组的内容写入磁盘文件,再显示出文件内容。(4)如果班级同学的身高、体重信息存放在一个文本文件中,编写程序实现从该文件 中读取学生信息并计算每个学生的身体状况,然后将结果写入另外一个文本文件。9 成绩评定上机测试通过、提交实验报告。实验工程十七:异常处理实验(2学时)

6、.实验属性:设计实验2,修读性质:选开.教学目标(1)正确理解C+的异常处理机制;(2)学习异常处理的定义和执行过程。3 .实验方法上机操作5实验仪器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本.实验内容(1)定义一个异常类CException,有成员函数Reason (),用来显示异常的类型。在字函 数中触发异常,在主程序中处理异常,观察程序的执行过程。7.成绩评定上机测试通过、提交实验报告。/labl6_l.cpp#include(1)定义一个异常类CException,有成员函数Reason (),用来显示异常的类型

7、。在字函 数中触发异常,在主程序中处理异常,观察程序的执行过程。7.成绩评定上机测试通过、提交实验报告。/labl6_l.cpp#includeUsing namespace std;#define D(a)T#aendl;a Ofstream T(toutput.ouf,);Void main()D(int i=53;)D(floatf=4700113.141593;) Char*s=Is there any more?;D(T.setf(ios:unitbuf);)D(T.setf(ios:showbase);) D(T. setf(ios: uppercase);) D(T.setf(i

8、os:showpos);) D(Tiendl;) D(T.setf(ios:hex,ios:basefield);) D(Tiendl;)D(T.unsetf(ios:uppercase);) D(T.setf(ios:oct,ios:basefield);) D(Tiendl;)D(T.setf(ios:showbase);)D(T.setf(ios:dec,ios:basefieId);) D(T.setf(ios:left,ios:adjustfield);) D(T.fin(O);)D(Tt6fill char:vvT.fm() stop o其中,rank为枚举类型CPURank,定义

9、为enum CPU_RankPl=l, P2, P3, P4, P5, P6, P7, frequency 为单位是 MHz 的整型数,voltage 为浮点型 的电压值。观察构造函数和析构函数的调用顺序。(2)定义一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom) 等等,有两个公有成员函数run、stopo cpu为CPU类的一个对象,ram为RAM类的一个对 象,cdrom为CDR0M类的一个对象,定义并实现这个类,观察这些类的构造函数和析构函数 的调用顺序。(3)分析以下程序运行结果。/lab5_l.cpp#include void fnl();i

10、nt x=l,y=2;int main()(cout,Begin.,endl;cout,x=,xendl;couty=yendl;cout9,Evaluate x and y in main()./,endl;int x=10,y=20;cout,x=,xendl;cout,y=,yendl;cout?,Step into fnl().,endl;fnl();coutBack in mainendl;cout,x=,xendl;cout 编号 char number 7、性别 char sex 3 生日 birthday 身份证号 char id 16。 其中“出生日期”定义为一个“日期”类内

11、嵌对象。用成员函数实现对人员信息的录入和显 示。要求包括:构造函数和析构函数、拷贝构造函数、内嵌构造函数、内联成员函数、类组 合。在测试程序中定义people类的对象数组,录入数据并显示,观察构造函数和析构函数 的调用顺序。11 成绩评定上机测试通过、提交实验报告。实验工程十:继承与派生基础实验(2学时)L实验属性:验证实验2 .修读性质:必开3 .教学目标(1)学习定义和使用类的继承关系,定义派生类;(2)熟悉不同继承方式下对基类成员的访问控制。4 .实验方法上机操作5实验仪器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本

12、6 .实验内容(1)定义一个基类Animal,有私有整型成员变量age,构造其派生类dog,在其成员 函数SetAge(int n)中直接给age赋值,看看会有什么问题,把age改为公有或保护成员变 量,还会有问题吗?编程试试看,说明了什么原那么?(2)定义一个基类BasClass,有整型成员变量Number,构造其派生类DerivedClass, 观察构造函数和析构函数的执行情况和执行顺序。7 .成绩评定上机测试通过、提交实验报告。实验工程十一:继承与派生应用实验(2学时)L实验属性:设计实验1 ,修读性质:选开3 .教学目标(1)学习利用虚基类解决二义性问题。4 .实验方法上机操作5实验仪

13、器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本6 .实验内容(1)定义一个车(vehicle)基类,具有MaxSpeed Weight等成员变量,Run、Stop 等成员函数,由此派生出自行车(bicycle)类,汽车(motorcar)类。自行车(bicycle) 类有高度(Height)等属性,汽车(motorcycle)类有座位数(SeatNum)等属性。从bicycle 和Motorcar派生出摩托车(motorcycle)类,在继承过程中,注意把vehicle设置为虚基类。 如果不把vehicle设置为虚基类,会

14、有什么问?编程试试看。(2)从实验9中的people (人员)类派生出student (学生)类,添加属性:职务 char principal ship 11 部门 char department 21 o 从 stud6nt 类中派生出 graduate (研究生)类,添加属性:专业 char subject 21、导师 teacher adviser;从 graduate 类 派生出其TA(助教)类,注意虚基类的使用。重载相应的成员函数,测试这些类并观察构造图9T实验任务的类图7 .成绩评定上机测试通过、提交实验报告。实验工程十二:多态性实验(2学时)L实验属性:设计实验2,修读性质:必开

15、8 .教学目标(1)掌握运算符重载的方法;(2)学习使用虚函数实现动态多态性。9 .实验方法上机操作5实验仪器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本10 实验内容(1)定义Point类,有坐标_x, _y两个成员变量;对Point类重载“+”(自增)、“一” (自减)运算符,实现对坐标的改变。(提示:注意前+和后+)。(2)定义一个车(vehicle)基类,有Run、Stop等虚成员函数,由此派生出自行车 (bicycle)类、汽车(motorcar)类,从 bicycle 到 motorcar 派生出摩托车(mot

16、orcycle) 类,它们都有Run、Stop等成员函数,利用基类指针或引用虚函数,观察虚函数的作用,说 说多态的含义,如果不采用虚函数会是什么样的结果?(3)对实验9中的people类重载“二二”运算符和“二”运算符,“二二”运算符判断两 个people类对象的id属性是否相等;“二”运算符实现people类对象的赋值操作。11 成绩评定上机测试通过、提交实验报告。实验工程十三:群体类和群体数据组织基础实验(2学时)12 实验属性:验证实验2,修读性质:必开13 教学目标(1)了解链表类的定义与实现,学习其使用方法;了解栈类定义与实现,学习其使用方法。14 实验方法上机操作5实验仪器设备硬件

17、环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本15 实验内容(1)使用重载函数模板重新实现实验三中2小题中的函数Maxi。(2)编写程序link.h,实现教材中例9-6的链表类。在测试lab9_l. cpp中定义两个 整型链表A和B,分别插入5个元素,然后把B中的元素加入A的尾部。(3)编写程序queue, h,用链表实现队列(或栈)类。在测试程序lab9_L cpp中定义 一个整型队列(或栈)对象,插入5个整数,压入队列(或栈),再依次取出并显示出来。16 成绩评定上机测试通过、提交实验报告。实验工程十四:群体类和群体数据组织应用

18、实验(2学时)L实验属性:设计实验2,修读性质:选开17 教学目标(1)了解队列类的定义与实现,学习其使用方法;了解C+标准模板库STL的使用方法。18 实验方法上机操作5实验仪器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本19 实验内容(1)将直接插入排序、直接选择程序、冒泡排序、顺序查找函数封装到教材中第9章 的数组类模板中,作为成员函数。实现并测试这个类。(2)定义一个对people类对象数组按编号排序的函数,一个按编号查找people对象 的函数。在测试程序中使用前面实验得到的结果定义教师数组和学生数组,分别对教师

19、数组 和学生数组进行排序和查找。学生-所修课程课程(3)定义course (课程)类,有属性:课程名char name21 成绩short score; 在实验7中的student类中增加属性:所修课程courses,为课程类对象。在测试程序测试 这个类。学生类之间的关系如图9-2所示。成绩后续节力、指针7函注一图9-2实验任务的类图20 成绩评定上机测试通过、提交实验报告。实验工程十五:泛型程序与C+标准模板库实验(2学时)L实验属性:设计实验2,修读性质:选开21 教学目标(1)掌握对数组元素排序的方法;(2)掌握对数组元素查找的方法;(3)应用标准C+库(STL)实现查找与排序。22 实验方法上机操作5实验仪器设备硬件环境:PC兼容机或品牌机、彩显、内存512M以上软件环境:WINDOWS-XP以上版本、VC+6.0以上版本23 实验内容(1)在C+标准模板库中,队列类(queue)的成员函数queue: :push。在队列的一端添

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服