C++实验报告(6)完整版.doc
PAGE
学生实验报告
学生姓名
屈丹丹
学号
0103358
同组人
实验项目
C++上机
□必修□选修
□演示性实验□验证性实验□操作性实验□综合性实验
实验地点
M109
实验仪器台号
16
指导教师
杨勇
实验日期及节次
2011-10-16
一、实验综述
1、实验目的及要求
1.根据所学知识,在上机前分析下列程序的运行结果,然后上机核对一下自己的结果正确与否,并给出其原因。
classdemo{
intx,y;
public:
demo(inta=1,intb=2){
x=a;
y=b;
coutConstructorbecalled...\n;}
demo(demod){
x=d.x;
y=d.y;
coutCopyConstructorbecalled...\n;}
~demo(){
coutDestructorbecalled...\n;
}
voidshow()
{
coutX=x\tY=yendl;
}
};
voidmain()
{
demod;
d.show();
demod1(3,5);
d1.show();
demod2(d1);
d2.show();
}
2.假定要做一个长方体的包装木箱,已知长方体的每个面木材的造价分别为:主视面35.2元/平米,侧视面21.8元/平米,俯视面11.3元/平米,要求编写一个长方体的类,输入长、宽、高后计算包装木箱的总造价.要求包括:构造函数和析构函数、每个面的面积函数等。
3.建立一个类STR,将任意整数转换为相应的字符串。例如,整数3456转换为字符串”3456”,具体要求如下:
(1)私有数据成员
intnum;被转换的整数。
chars[15];存放转换后的字符串。
(2)公有成员函数
STR(intx);构造函数。
voiditoa();实现将num转换成字符串并存放在字符串数组s中。
voidshow();输出整数及转换后的字符串。
编写主程序测试,其中字符串要求输出其长度。
2、实验仪器、设备或软件
实验所用仪器:电脑
实验所用软件:visualc++6.0
二、实验过程(实验步骤、记录、数据、分析)
第一题:
分析结果:
Constructorbecalled...
X=1Y=2
Constructorbecalled...
X=3Y=5
CopyConstructorbecalled...
X=3Y=5
Destructorbecalled...
Destructorbecalled...
Destructorbecalled...
第二题:
#includeiostream.h
constdoublezhushi=35.2;
constdoubleceshi=21.8;
constdoublefushi=11.3;
classcuboid{
private:doublelength,width,height;
public:cuboid(double,double,double);
cuboid(cuboidp);
~cuboid(){coutdestructor...endl;}
doublearea1();
doublearea2();
doublearea3();
doublecost();
};
cuboid::cuboid(doublel,doublew,doubleh){
length=l;width=w;height=h;
coutconstruct...endl;
}
doublecuboid::area1(){
returnlength*height;
}
doublecuboid::area2(){
returnwidth*height;
}
doublecuboid::area3(){
returnlength*width;
}
doublecuboid::cost(){
return2*zhushi*area1()+2*ceshi*area2()+2*fushi*area3();
}
voidmain(){
doublea,b,c;
cinabc;
cuboidp(a,b,c);
p.cost();
coutpriceisp.cost()endl;
}
第三题: