实验2类和对象 C++.docx
- 文档编号:24911150
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:21
- 大小:153.45KB
实验2类和对象 C++.docx
《实验2类和对象 C++.docx》由会员分享,可在线阅读,更多相关《实验2类和对象 C++.docx(21页珍藏版)》请在冰豆网上搜索。
实验2类和对象C++
实验2类和对象
(1)
班级学号姓名成绩
一.实验目的
1. 掌握类的概念、类的定义格式、类与结构的关系、类的成员属性和类的封装性;
2.掌握类对象的定义,对象的初始化;
3.理解类的成员的访问控制的含义,公有、私有和保护成员的区别;
4.掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数。
能够根据给定的要求定义类并实现类的成员函数;
二.实验内容
1.分析找出以下程序中的错误,说明错误原因,给出修改方案使之能正确运行。
#include
classone
{inta1,a2;
public:
one(intx1=0,x2=0);
};
voidmain()
{onedata(2,3);
cout< cout< } 2.分析以下程序的错误原因,给出修改方案使之能正确运行。 #include classAmplifier{ floatinvol,outvol; public: Amplifier(floatvin,floatvout) {invol=vin;outvol=vout;} floatgain(); }; Amplifier: : floatgain(){returnoutvol/invol;} voidmain() {Amplifieramp(5.0,10.0); cout<<"\n\nThegainis=>"< } 3.定义盒子Box类,要求具有以下成员: 可设置盒子形状;可计算盒子体积;可计算盒子的表面积。 4.定义计数器类Counter。 要求具有以下成员: 计数器值;可进行增值和减值记数;可提供记数值。 5.编写一个程序计算两个给定的长方形的周长和面积。 6.编写一个程序,采用一个类求n! 并输出10! 的值。 7.编写一个程序,设计一个Cdate类,它应该满足下面的条件: 1)用这样的格式输出日期: 日-月-年; 2)输出在当前日期上加两天后的日期; 3)设置日期。 三、实验源程序、测试与结论 1.分析: 出错原因: 构造函数one(intx1=0,x2=0);没有给x1,x2付值。 (cout< 修改方案: #include classone {inta1,a2; public: one(intx1=0,intx2=0) {a1=x1;a2=x2;} ~one() {cout< cout< } }; voidmain() {onedata(2,3);} 测试数据截图: 2.分析: 出错原因: Amplifier: : floatgain()类体外定义格式错误,main()函数输出gain()错误。 修改方案: #include classAmplifier { floatinvol,outvol; public: Amplifier(floatvin,floatvout) {invol=vin;outvol=vout;} floatgain(); }; floatAmplifier: : gain(){returnoutvol/invol;} voidmain() {Amplifieramp(5.0,10.0); cout<<"\n\nThegainis=>"< } 测试数据截图: 3.代码: 方案一: #include #include #definepi3.14159265358//声明常量pi为π usingnamespacestd; classBox//定义为box的类 { private: doubleheights;//若干成员 doublewidths; doublelengths; doublearea; public: voidcreate_data(doublelength,doubleheight,doublewidth=0)//数据创建函数 { heights=height; widths=width; lengths=length; } doublecreat_area(intn)//底面积函数 {area=double(n)/(4*tan(pi/n))*lengths*lengths;//针对正多边形的面积公式 return2*area+n*lengths*heights;//返回表面积 } doublecreat_bulk()//体积函数 {returnarea*heights;} doublecreat_area_oblong()//普通的四边形的面积 {return2*(widths*lengths+heights*lengths+heights*widths);} doublecreat_bulk_oblong()//普通四边形的体积 {returnheights*widths*lengths;} }; voidmain() {BoxT; inti=1,a; doublel,h,w; cout<<"\t\t\t欢迎进入BOX计算应用"< system("titleBOX盒子计算应用"); while(i)//循环 { cout<<"请输入你要设置的盒子的形状(N>3: 底面的边数): "; cin>>a; if(a<4)//判断输入的正确性 { cout<<'\a'<<'\a'<<'\a'<<"输入错误! ! "< cin.clear();//清除fail状态 cin.sync();//清除缓冲区 } if(a==4)//进入普通底面为四边形的盒子的计算 { cout<<"请输入该盒子的边长,宽,高: "; cin>>l>>w>>h; T.create_data(l,h,w); cout<<"该盒子的表面积为: "< cout<<"该盒子的体积为: "< } if(a>4)//进入底面积为正多边形的盒子的计算 { cout<<"你当前选择为正多边体;请输入该盒子的边长和高: "; cin>>l>>h; T.create_data(l,h); cout<<"底面为正"<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验2类和对象 C+ 实验 对象
![提示](https://static.bdocx.com/images/bang_tan.gif)