c++实验报告文档格式.docx
- 文档编号:18921897
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:45
- 大小:629.62KB
c++实验报告文档格式.docx
《c++实验报告文档格式.docx》由会员分享,可在线阅读,更多相关《c++实验报告文档格式.docx(45页珍藏版)》请在冰豆网上搜索。
1、程序说明。
用if-else语句进行选择程序功能,while语句实现功能的循环实现
程序如下:
cmath>
usingnamespacestd;
intmain()
cout<
"
1计算圆面积"
endl
<
2计算矩形面积"
3计算正方形面积"
4退出"
请选择相应功能代码:
;
intx;
//x对应编号
cin>
>
x;
doublearea;
while(x!
=4)
{
if(x==1)
doubler;
半径:
r;
area=3.14*r*r;
面积为"
area<
endl;
}
elseif(x==2)
doublea,b;
长和宽:
a>
b;
area=a*b;
elseif(x==3)
doublea,b,c,d;
边长:
a;
area=a*a;
else
输入有误,请重新输入!
功能代码:
return0;
程序截图:
实验二、函数的应用实验报告
1、掌握函数的定义和调用方法。
2、练习重载函数的使用。
3、练习使用系统函数。
4、学习使用VC++的DEBUG调试功能,使用STEPINTO追踪到函数的内部。
1、编写一个函数把华氏温度转换为摄氏温度,转换公式:
C=(F-32)*5/9。
2、编写重载函数Max1可分别求取两个整数,三个整数,两个双精度数,三个双精度数的最大值。
3、使用系统函数pow(x,y)计算XY的值,注意包含头文件math.h。
4、使用递归的方法编写函数求Fibonacci级数,观察递归调用的过程。
三、实验报告:
1、温度转换
A.程序
#include<
doubleFtoC(doubleF)
return(F-32)*5/9;
voidmain()
doubleF,c;
输入华氏温度:
F;
c=FtoC(F);
输出摄氏温度"
c<
B.截图
2.重载函数
intmax1(inta,intb)//两个整数
returna>
b?
a:
intmax1(inta,intb,intc)//三个整数
returnmax1(a,max1(b,c));
doublemax1(doublea,doubleb)//两个双精度
doublemax1(doublea,doubleb,doublec)//三个双精度
voidmain()
{
inta,b,c,m;
doublex,y,z;
1、两个整数"
<
2、三个整数"
3、两个双精度数"
4、三个双精度数"
5、退出"
m;
while(m!
=5)
if(m==1)
{
cout<
请输入两个整数"
cin>
a=max1(a,b);
最大值为"
a<
}
elseif(m==2)
请输入三个整数"
b>
c;
a=max1(a,b,c);
elseif(m==3)
请输入两个双精度数"
x>
y;
x=max1(x,y);
x<
elseif(m==4)
请输入三个双精度数"
y>
z;
x=max1(x,y,z);
cout<
cin>
3系统函数pow(x,y)计算XY
intx,y;
请输入两个数x,y"
x的y次方为"
pow(x,y)<
4使用递归的方法编写函数求Fibonacci级数
intfib(intn)
Processingfib("
n<
)…"
if(n<
3)
{
Reutrn1!
\n"
return
(1);
}
else
Callfib("
n-2<
)andfib("
n-1<
)."
return(fib(n-2)+fib(n-1));
}
intmain()
intn,answer;
Enternumber:
n;
endl<
answer=fib(n);
answer<
isthe"
thFibonaccinumber"
实验三、类与对象实验报告
1、掌握类与对象的声明和使用。
2、观察构造函数与析构函数的执行过程。
3、掌握具有不同访问属性的成员的访问方式。
4、使用DEBUG调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。
1、声明一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。
其中,rank为枚举类型CPU_Rank,声明为enumCPU_Rank{P1=1,P2,P3,P4,P5,P6,P7},frequency为单位是MHz的整型数,voltage为浮点型的电压值,观察构造函数和析构函数的调用顺序。
2、声明一个简单的computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等等,有两个公有成员函数run、stop。
cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,声明并实现这个类。
1、cpu类
enumCPU_Rank{P1=1,P2,P3,P4,P5,P6,P7};
classCPU
private:
CPU_Rankrank;
intfrequency;
floatvoltage;
public:
CPU(intnewrank,intnewfrequency,floatnewvoltage);
voidrun();
voidstop();
~CPU(){cout<
成功调用析构函数"
};
voidCPU:
:
run()
程序开始执行"
stop()
程序结束"
CPU:
CPU(intnewrank,intnewfrequency,floatnewvoltage)
rank=(CPU_Rank)newrank;
frequency=newfrequency;
voltage=newvoltage;
成功调用构造函数"
等级:
enum(P1)<
频率:
frequency<
电压:
voltage<
CPUcpu(2,60,220);
cpu.run();
cpu.stop();
puter类
iostream.h>
enumCPU_rank{p1=1,p2,p3,p4,p5,p6,p7};
private:
CPU_rankrank;
intfrequency;
floatvoltage;
public:
CPU(CPU_rankr,intf,floatv)
rank=r;
frequency=f;
voltage=v;
构造了一个cpu!
~CPU()
{
其构了一个cpu!
CPU_rankgetrank()const
{returnrank;
voidsetrank(CPU_rankr)
{rank=r;
voidrun()
{cout<
cpu开始运行!
voidstop()
cpu停止运行!
classRAM
intram;
RAM(intr)
构造了一个ram!
RAM()
ram=0;
cout<
~RAM()
析构了一个ram!
voidrun()
ram开始运行!
voidstop()
ram停止运行!
classCDRAM
intcdram;
CDRAM(intc)
cdram=c;
构造了一个cdram!
CDRAM()
~CDRAM()
析构了一个cdram!
voidrun()
cdram开始运行"
cdram停止运行"
classcomputer
CPUcpu;
RAMram;
CDRAMcdram;
computer(CPUc,RAMr,CDRAMcd);
computer();
~computer()
析构了一个computer"
computer(computer&
p);
computer开始运行"
computer停止运行"
computer:
computer():
cpu(p6,100,float(1.3)),ram(20),cdram(30)
构造了一个cpu00"
computer(CPUc,RAMr,CDRAMcd):
cpu(c),ram(r),cdram(cd)
构造了一个computer"
computer(computer&
p):
cpu(p.cpu),ram(p.ram),cdram(p.cdram)
调用了复制构造函数"
CPUm(p6,300,float(2.8));
RAMn
(1);
CDRAMq
(2);
computercom1;
computercom2(m,n,q);
实验四、C++程序结构实验报告
同组者指导教师柯栋梁一、实验目的:
1、观察程序运行时变量的作用域、生存期和可见性。
2、掌握类的静态成员的使用。
3、学习多文件结构在C++程序中的使用。
1、运行下面的程序,观察变量x、y的值。
voidfn1();
intx=1,y=2;
cout<
"
Begin..."
endl;
x="
x<
y="
y<
Evaluatexandyinmain()..."
intx=10,y=20;
Stepintofn1()..."
fn1();
Backinmain"
voidfn1()
inty=200;
2、实现客户机(CLIENT)类。
声明字符型静态数据成员ServerName,保存其服务器名称;
整型静态数据成员ClientNum,记录已定义的客户数量;
定义静态函数ChangeServerName()改变服务器名称。
在头文件client.h中声明类,在文件client.cpp中实现,在文件test.cpp中测试这个类,观察相应的成员变量取值的变化情况。
1.程序运行观察
A.截图
2.实现客户机(CLIENT)类
#include<
classClient
staticcharservername;
staticintclientnum;
char*clientname;
Client(char*name1);
staticvoidchange()
请输入要改成的服务器名称:
servername;
voidshowname()
name="
clientname<
#include"
Client.h"
intClient:
clientnum=0;
charClient:
servername='
t'
Client:
Client(char*name1)
{clientname=newchar[20];
strcpy(clientname,name1);
clientnum++;
Clienta("
zhang"
);
a.showname();
servername<
clientnum<
Client:
change();
实验五、数组、指针与字符串实验报告
1、学习使用数组数据对象及字符串的组织与处理。
2、学习使用标准C++库。
3、掌握指针的使用方法,并通过DEBUG观察指针内容及其所指的对象的内容。
4、练习通过动态内存分配实现动态数组,并体会指针在其中的作用。
1、编写并测试3×
3矩阵转置函数,使用数组保存3×
3矩阵。
2、使用动态内存分配生成动态数组来重新完成上题。
3、编程实现两字符串的连接。
要求使用字符数组保存字符串,不允许使用系统函数。
4、使用string类声明字符串对象,重新实现上一小题。
1.矩阵转置
voidmove(intmatrix[3][3])
inti,j,k;
for(i=0;
i<
3;
i++)
for(j=0;
j<
i;
j++)
k=matrix[i][j];
matrix[i][j]=matrix[j][i];
matrix[j][i]=k;
inti,j;
intdata[3][3];
输入矩阵的元素"
cout<
第"
i+1<
行第"
j+1
<
个元素为:
data[i][j];
cout<
输入的矩阵为:
for(i=0;
for(j=0;
cout<
data[i][j]<
move(data);
转置后的矩阵为:
cout<
2.使用动态内存分配生成动态数组
voidmove(int*matrix,intn)
k=*(matrix+i*n+j);
*(matrix+i*n+j)=*(matrix+j*n+i);
*(matrix+j*n+i)=k;
intn,i,j;
int*p;
请输入矩阵的行、列数:
cin>
n;
p=newint[n*n];
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 实验 报告