(修正版)《面向对象》实验指导书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象程序设计》实验指导书
林煜明
应用科技学院
实验一简单C++ 程序的设计
1、实验目的
熟悉VC6.0的运行环境,通过编写简单的C++程序,学会在VC6.0中编辑、编译、运行和调试程序。
2、实验内容以下内容(1)和(2)必做,(3)可根据具体情况选做。
(1)编写程序,实现输入两个整数,计算并输出其结果,要求显示相应的交互信息。
(2)将(1)中的功能使用函数实现,并在main 函数中要求由用户确定是否继续。提示:每计算完一次,提示用户输入Y/N ,输入Y 则继续调用,输入N 则推出程序。
(3)编写一个有助于小学生学习乘法的程序,利用rand 函数生成两个一位的正整数。随后,函数输入如下所示的问题:How much is 6X 7?然后学生
输入答案。由程序检查学生的答案。如果正确,就打印“ Very good!”;
如果答案错误,就打印“ Error! Please try again”让学生再次输入答
案,直到正确为止。注:rand函数包含在stdlib.h头文件中。
3、实验要求
(1)独立完成实验。
(2)实验前需先完成预习报告,报告中应预先编写好源程序。
(3)实验过程中尽量独立思考,培养分析问题和解决问题的能力。
(4)实验完毕后书写实验报告,实验报告内容包括实验目的、实验内容、结果分析以及本次实验的心得体会。要求将程序源码和运行时的输入/输出数据情况书写在实验内容部分,并对程序的输出结果进行分析,说明为什么
能得出相应的结果(如果不能输出预期结果,需要分析说明其原因)。
实验二函数模板和带有缺省参数的函数
1、实验目的掌握函数模板和带有缺省参数的函数的定义,理解函数模板的作用,此外还应注意对带有缺省参数的函数进行调用时的具体情况。
2、实验内容以下内容中可根据具体情况(1)和(2)选一,(3)和(4)选
一。
(1)设计一个函数模板,它返回三个值中的较大值,并用int、char、double 型的值进行验证。
(2)编写程序,在主函数中输入两个值,然后将这两个值交换。要求用函数模板来实现函数swap(x,y)实现值得交换,并分别用整形和字符型的值进行
测试。
(3)设计一个函数int Addnum(int x),该函数接收用户输入x 个整数,并将它们相加求值,x 的默认值为5。编写相应的main 函数,并对
Addnum 函数进行调用。要求调用Addnum 函数时分别采用默认值和设定值
两种方式。
(4)编写一个具有5 个参数的函数,其中3 个具有默认值,然后在main 函数中针对参数不同的设置情况进行调用,要求运行时显示参数的设置情况。
3、实验要求
(1)独立完成实验。
(2)实验前需先完成预习报告,报告中应预先编写好源程序。
(3)实验过程中尽量独立思考,培养分析问题和解决问题的能力。
(4)实验完毕后书写实验报告,实验报告内容包括实验目的、实验内容、结果分析以及本次实验的心得体会。要求将程序源码和运行时的输入/输出数据情况
书写在实验内容部分,并对程序的输出结果进行分析,说明为什么能得出相应的结果(如果不能输出预期结果,需要分析说明其原因)。
实验三函数重载
1、实验目的
学会利用C++语言的基本知识编写程序,理解程序的结构。特别注重掌握函数重载、引用的使用等。
2、实验内容
以下内容可根据具体情况至少选做两题。
(1)编写一个函数,该函数能求出某个字符串的长度。然后再分别定义一个重载函数,能对整数求其长度(即数值中的位数)。最后,编写一个主函数并对以上两个函数的功能进行测试和验证。
(2)利用函数重载,分别定义两个函数,能查找一个整数是否在一个整数数组内存在,并且查找一个字符串是否在一个字符串指针数组内,如果存在则返回所在数组元素的下标,如果不存在则返回-1。最后编写main 函数进行调用,并测试其结果。
(3)编写一个函数,该函数能对一个整数数组进行倒置;然后再定义一个重载函数,该函数能对字符串指针数组中的字符串进行倒置;最后编写main 函数进行调用,并测试结果。
3、实验要求
(5)独立完成实验。
(6)实验前需先完成预习报告,报告中应预先编写好源程序。
(7)实验过程中尽量独立思考,培养分析问题和解决问题的能力。
(8)实验完毕后书写实验报告,实验报告内容包括实验目的、实验内容、结果分析以及本次实验的心得体会。要求将程序源码和运行时的输入/输出数据
情况书写在实验内容部分,并对程序的输出结果进行分析,说明为什么能
得出相应的结果(如果不能输出预期结果,需要分析说明其原因)。
实验四类和对象
1、实验目的掌握类和对象的定义方法、成员函数的实现与调用方法,深刻领会类与对象的区别、类实现数据隐藏与封装的原理等。
2、实验内容
以下内容可根据具体情况至少选做两题。
( 1) 定义一个Data 类,包括year、month、day 三个数据成员,通过set_date 成员函数输入出生日期数据,通过disp_date 成员函数将其输出,并设计出相应的程序测试类功能。
( 2) 定义一个两点坐标与距离的类,输入坐标上的两点,计算出两点之间的距离,并输出。同时设计出相应的程序测试类的功能。
(3)定义一个类,输入若干名学生的学号、姓名和成绩,然后显示这个数据并计
算出平均分。同时设计出相应的程序测试类的功能。
(4)定义一个正方体类Cube,输入变长的值、计算并输出立方体的表面积和体
积。同时设计出相应的程序测试类的功能。
( 5) 定义一个矩形类, 内有私有数据成员代表长和宽, 成员函数用于取长和取宽,成员函数print()用于打印长x宽的矩形,如长为10,宽为4的矩阵如下:
**********
**********
**********
**********
3、实验要求
在编写程序时,将类的定义写成头文件(.h),类的实现写成.cpp文件,即把类的定义与类的实现代码分成不同的文件来保存。在后面的实验中, 也应该养成这样的习惯。
( 1 )独立完成实验。
( 2)实验前需先完成预习报告,报告中应预先编写好源程序。
( 3)实验过程中尽量独立思考,培养分析问题和解决问题的能力。
( 4)实验完毕后书写实验报告,实验报告内容包括实验目的、实验内容、结果分析以及本次实验的心得体会。要求将程序源码和运行时的输入/输出数据
情况书写在实验内容部分,并对程序的输出结果进行分析,说明为什么能
得出相应的结果(如果不能输出预期结果,需要分析说明其原因)。