87C++实验教案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

-1-实验一熟悉实验环境一、实验目的1)了解和使用VC++集成开发环境;2)熟悉VC++环境的基本命令和功能键;3)学习完整的C++程序开发过程;4)理解简单的C++程序结构;5)学习C++程序基本的输入输出操作。二、实验内容及要求1)控制台应用程序:在终端上输出“Hello”(printf);2)Windows应用程序:在窗口上输出“Hello”(pDC-TextOut(50,50,“Hello”))。三、实验重点1)C、C++、VC++三者之间的关系;2)项目与源文件的区别;3)控制台应用程序与Windows应用程序的区别。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题在一个项目中可有几个main()函数?如何调试多个源程序?七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-2-实验二基本I/O程序设计一、实验目的1)掌握C++中预定义数据类型的输入/输出;2)掌握const关键字的常用使用方法。二、实验内容及要求1)编写程序,从键盘上输入三个十进制整数,然后在屏幕上输出其相对应的十六进制和八进制表示;2)编写程序,在屏幕上输出如下九九乘法表。9*1=19*2=18......9*9=818*1=88*2=16……8*8=647*1=77*2=14…….7*7=49……1*1=1三、实验重点1)C++中输入多个数的分隔控制;2)C++中输出换行语法表示。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题九九乘法表的其他样式表示输出?七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-3-实验三函数一、实验目的学习C++中内置函数、默认参数的定义与调用方法;学习C++中函数重载的使用方法。二、实验内容及要求编写一个sum内联函数,能返回二个整数的和,其二个参数都为默认参数,然后由主函数进行调用;编写二个add函数,分别可对int与char类型进行加法操作,其中针对char类型的加法操作可视为连接操作,如add(‘x’,’y’)的返回值为”xy”。。三、实验重点函数的重载;默认参数的定义次序。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题函数重载调用时的判断依据是什么?七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-4-实验四动态内存分配一、实验目的1)学习内存的动态分配与释放方法;2)学习作用域运算符的功能与基本使用方法3)学习引用的使用方法。二、实验内容及要求1)编写程序,声明同名变量,利用作用域运算符在不同代码处分别对其进行操作,并在屏幕输出结果;2)编写程序,利用new和delete操作符为数组分配空间,从键盘上接收十个整数,然后输出在屏幕上,最后释放数组空间;3)编写函数swap,其参数为引用类型,对二个整数进行交换。三、实验重点1)引用与指针的关系;2)C++中的内存操作方式。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题利用new操作符进行内存操作时,需要注意什么?引用在作为函数参数和返回值时的作用。七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-5-实验五类与对象一、实验目的1)学习类与对象的定义和声明;2)掌握类与对象的使用方法;3)学习数据成员与成员函数的访问方式。二、实验内容及要求1)编程实现一个student类,管理一个学生的基本信息,包括学生姓名、学号、语文成绩、数学成绩、英语成绩、平均成绩等数据成员,然后在main函数中,从键盘输入得到一个学生的基本信息,最后输出所有数据成员值到屏幕上;2)要求使用成员函数的方式实现对姓名、学号的读写操作、语数英三科成绩的写操作、平均成绩的读操作。三、实验重点1)类与实例的关系;四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题为什么要采用成员函数对数据成员进行读写操作,而不是直接操作?七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-6-实验六构造函数与析构函数一、实验目的1)理解构造函数和析构函数的定义与执行过程,学会构造函数的重载方法。二、实验内容及要求1)在实验五的student类基础上实现二个构造函数,一个可根据姓名、学号、语、数、英成绩来构造一个学生对象,另一个则可根据姓名、学号来构造一个学生对象,并同时设置语、数、英成绩为零;2)在构造函数与析构函数中要加入体现对象构造和析构过程的屏幕输出代码。三、实验重点2)构造函数的重载,默认构造函数的使用;3)构造函数与析构函数的执行过程,以及类定义与类使用的次序。四、实验步骤2)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题构造函数与默认构造函数的关系。七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-7-实验七对象数组与对象指针一、实验目的1)掌握数组与指针的定义与使用方法;2)理解数组与指针的存储分配与表示;3)学习向函数传递数组的方法;4)学习用指针和引用向函数传递参数。二、实验内容及要求1)在实验五的student类基础上,实现一个Sum函数,可将一个student类数组作为参数传送到函数中,计算出语、数、英的总分,并输出在屏幕上;2)要求Sum函数中的参数传送分别用普通、指针和引用三种方式实现。三、实验重点1)直接传送、引用传送、指针传送三种方式的区别,分别对参数值的影响;四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题对象数组和对象指针与普通对象和普通指针的关系。七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-8-实验八静态成员与友元一、实验目的1)学习友元的使用;2)学习静态数据成员和静态成员函数的使用。二、实验内容及要求1)在实验五的student类基础上,加一个静态数据成员Count,用于保存当前所有student对象的数量,然后在类中实现一个count成员函数,可计算出学生的总数,并输出在屏幕上;2)为student声明一个友元类com,该类包含一个sum函数,计算出所有学生的语、数、英的总分,并输出在屏幕上。三、实验重点友元的访问特性;静态数据成员的特点。四、实验步骤2)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题静态成员函数与静态数据成员相比,有什么特点?友元函数、友元成员函数、友元类的关系。七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-9-实验九派生类与继承一、实验目的1)学习类的的继承,能够定义和使用类的继承关系;2)学习派生类的声明与定义方法;3)熟悉公有派生和私有派生的访问特性。二、实验内容及要求在实验五的student类基础上,定义小学生、中学生、大学生三个继承类;小学生类增加“年级”数据成员及读写函数,实现全部信息的屏幕输出;中学生类增加“文理科”数据成员及读写函数,实现全部信息的屏幕输出;大学生类增加“专业”数据成员及读写函数,实现全部信息的屏幕输出。三、实验重点Private和public派生方式对基类数据成员的可见性。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题为什么要派生类?类继承的好处是什么?派生类的构造/析构函数执行次序。七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-10-实验十虚基类一、实验目的1)学习虚函数的定义与使用方法。二、实验内容及要求1)定义base1、base2、base3、derived四个类,其中base2和base3继承自base1,derived类继承自base2和base3二个类;2)使用虚基类和作用域运算符二种方法来访问base1类中的数据成员。三、实验重点1)C++解决二义性中虚基类的使用。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题什么叫二义性?七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-11-实验十一函数和运算符重载一、实验目的1)掌握运算符重载的基本方法。二、实验内容及要求在实验五student类的基础上重载“==”运算符,判断二个student对象是否相等;在实验五student类的基础上重载“”运算符,判断二个student对象的成绩关系。三、实验重点1)运算符重载的语法规则。四、实验步骤2)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题函数与运算符的关系。七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-12-实验十二虚函数一、实验目的1)学习虚函数的定义与使用方法;2)掌握使用虚函数和继承实现动态多态性的方法。二、实验内容及要求1)定义一个类BaseDraw,该类中有一个Draw函数;2)定义一个类Rect,继承自BaseDraw,重载Draw函数;3)定义一个类Cir,继承自BaseDraw,重载Draw函数;4)用各类对象指针调用各类对象的Draw函数,体会继承中的多态性。三、实验重点1)继承中的多态性与虚函数多态性。四、实验步骤1)进入VC+;2)编写程序;3)调试程序;4)分析结果。五、实验环境Windows2000、VC++6.0六、思考题继承中的多态性与虚函数多态性的区别是什么?七、实验报告要求1)实验名称、日期;2)姓名、班级、学号;3)源代码需有注释;4)实验结果;5)心得体会。八、参考书籍《C++面向对象程序设计习题解析与上机指导》,陈维兴等,清华大学出版社-13-实验十三函数模板一、实验目的1)理解模板的作用;2)学习函数模板及其声明和生成方法;3)学习函数模板的异常情形处理方法。二、实验内容及要求

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功