77范文网 - 专业文章范例文档资料分享平台

《C++与面向对象程序设计》实验指导书(4)

来源:网络收集 时间:2020-04-13 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

float Convert(float TempFer) {

float TempCel;

TempCel = ((TempFer - 32) * 5) / 9; return TempCel; }

2.分别编写四个同名函数max1,实现函数重载,在main()函数中测试函数功能。示例程序lab3_2.cpp如下:

#include int max1(int x, int y) {

return (x>y?x:y); }

int max1(int x, int y, int z) {

int t=max1(x,y); return (t>z?t:z); }

float max1(float x, float y) {

return (x>y?x:y); }

float max1(float x, float y, float z) {

float t=max1(x,y); return (t>z?t:z); }

void main() {

int x1, x2; float d1, d2; x1 = max1(5,6); x2 = max1(2,3,4);

d1 = max1(float(2.1), float(5.6));

d2 = max1(float(12.3), float(3.4),float(7.8)); cout << \ cout << \

15

}

cout << \cout << \

3.在main()函数中提示输入两个整数x、y,使用cin语句得到x、y的值,调用pow(x,y)函数计算xy的结果,再显示出来。示例程序lab3_3.cpp如下:

#include

#include void main() {

int x, y;

cout << \输入x的值:\ cin >> x;

cout << \输入y的值:\ cin >> y;

cout << x << \的\次幂为:\}

4.编写递归函数int fun(int n),在主程序中输入n的值,调用fun函数计算机n!的值。使用if语句判断函数的出口,在程序中用cout语句输出提示信息。 示例程序lab3_4.cpp如下:

#include

int fun(int n) {

int f;

if(n==1)f=1;

else f=fun(n-1)*n; return f; }

void main(void) {

int n,answer;

cout<<\请输入一个整数0>n;

answer=fun(n);

cout<

5.使用debug中的Step Into追踪到函数内部,观察函数的调用过程。调

16

试操作步骤如下:

1)选择菜单命令Build|Start Debug|Step in,或按下快捷键F11,系统进入单步执行状态,程序开始运行,并出现一个DOS窗口,此时Visual Studio中光标停在main()函数的入口处。

2)把光标移到语句answer=fun(n)前,从Debug菜单单击Run to Cursor,在程序运行的DOS窗口中按提示输入数字(如5),回到Visual Studio中,光标将停在该语句所在行,观察n及其他变量的值(观察方法见实验二)。

3)从Debug菜单或Debug工具栏中单击Step Into,或按下F11,程序进入fun函数,观察n,f及其他相关变量的值。重复上述操作,直到退出fun函数,分析程序的执行过程,加深对函数调用和递归调用的理解。

4)再试试Debug菜单栏中的菜单项,熟悉Debug的各种方法。

17

实验四 类与对象

一、实验目的

1.掌握类的定义和使用。 2.掌握类的对象的声明。

3.复习具有不同访问属性的成员的访问方式。 4.观察构造函数和析构函数的执行过程。

5.使用VC++的debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。

二、实验课时

4学时 三、实验任务

1.定义一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run(提示信息“CPU开始运行”)、stop(提示信息“CPU停止运行”)。其中,为枚举类型CPU_Rank,定义为enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7},frequency为单位是MHz的整型数,voltage为浮点型的电压值。在main函数中定义该类的一个对象,并调用其公有成员函数,观察构造函数和析构函数的调用顺序。试试能不能在主函数中打印该对象的属性值,并分析原因。

2.在上述CPU类中添加成员函数,分别用于设置及获取各属性的值,并在main函数中调用这些函数。观察当这些函数被设置成private或public时会有什么不同。

3.定义一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等,有两个公有成员函数run、stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象。CPU类的定义见实验任务1,RAM、CDROM类可以自由设置一些属性,并提供类似的run、stop这两个成员函数。在main函数中测试这个类,分析成员函数的运行顺序。

18

4.定义一个Point类,属性为坐标X、Y的值,包含有如下成员函数:构造函数、析构函数、拷贝构造函数、设置与获取X和Y的值的函数,并测试之。 四、实验步骤

1.首先定义枚举类型CPU_Rank,再定义CPU类,包含等级、频率、电压等私有数据成员,定义成员函数run、stop,用来输出提示信息,在构造函数和析构函数中也可以输出提示信息。在主程序中定义一个CPU的对象,调用其成员函数,观察类对象的构造与析构顺序,以及成员函数的调用。示例程序lab4_1.cpp代码如下:

#include

enum CPU_Rank {P1=1,P2,P3,P4,P5,P6,P7}; class CPU {

private:

CPU_Rank rank; int frequency; float voltage; public:

CPU (CPU_Rank r, int f, float v) {

rank = r;

frequency = f; voltage = v;

cout << \构造了一个CPU!\ }

~CPU () { cout << \析构了一个CPU!\ void Run() {cout << \开始运行!\ void Stop() {cout << \停止运行!\};

void main() {

CPU a(P6,300,2.8); a.Run(); a.Stop(); }

19

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库《C++与面向对象程序设计》实验指导书(4)在线全文阅读。

《C++与面向对象程序设计》实验指导书(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/937259.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: