1、C+ 实验一总结报告实验报告实验一 VC+ 6.0开发环境应用入门 1.实验结果: 2.实验结果分析:该程序是利用C+输出两句话,练习输出格式。实验二 C+简单程序设计1. 实验结果:2.实验结果分析: 求一个图形的面积要先判断是哪一种图形,用switch语句就可以解决,再利用公式即可。如输入1为圆形,再输入边长3,利用面积公式,它的面积就是28.2744。 3.实验结果:4.实验结果分析: 复习i+与+i的运用。i+在当前语句时,此时i的值是没有变化的,直到此句执行结束,i的值才会+1;+i在当前语句执行之前时,i的值就已经+1。实验三 函数的应用1.实验结果: 2.实验结果分析: 函数的递
2、归作用,先声明定义一个函数,输入形参n的值,然后进行比较,小于3的直接返回1;大于3的就继续递归,直到得到的形参值小于3,返回1为止。从程序结果得知,返回n个1就最终递归返回n。 3.编写一个函数把华氏温度转换为摄氏温度,转换公式为:C = (F - 32) * 5/9。4.使用系统函数pow(x,y)计算xy的值,注意包含头文件math.h程序:实验总结:1.基本掌握如何操作C+的界面,包括运行,编译,调试等过程; 2.学会编写简单的C+程序,掌握基本数据类型变量和常量的应用 ,运算符与表达式的应用; 3.学会使用VC+6.0开发环境中的debug调试功能:单步执行、设置断点、观察变量值;熟
3、练使用F10,F11,shift+F11,ctrl+F10等快捷键的使用。4.基本掌握函数的运用,并对C语言的复习与运用,认识了C+与C语言的异同。实验报告实验四 C+程序的结构 一、 实验目的 1. 观察程序运行中变量的作用域、生存期和可见性; 2. 学习类的静态成员的使用; 3. 学习多文件结构在C+程序中的使用; 二、 实验任务 1. 运行下面的程序,观察变量x、y的值。 #include using namespace std; void fn1(); int x = 1, y = 2; int main() cout Begin. endl; cout x = x endl; cou
4、t y = y endl; cout Evaluate x and y in main(). endl; int x = 10, y = 20; cout x = x endl; cout y = y endl; cout Step into fn1(). endl; fn1(); cout Back in main endl; cout x = x endl; cout y = y endl; return 0; void fn1() int y = 200; cout x = x endl; cout y = y endl; 2. 实现客户机(CLIENT)类。声明字符型静态数据成员Ser
5、verName,保存其服务器名称;整型静态数据成员ClientNum,记录已定义的客户数量;定义静态函数ChangeServerName()改变服务器名称。在头文件client.h中声明类和实现类,在文件client.cpp中测试这个类,观察相应的成员变量取值的变化情况。 程序:/实现客户机(CLIENT)类。#includeusing namespace std;class Clientprivate: static char SeverName10; static int Clientnum;public: Client() coutClient构造函数被调用endl; Clientnum
6、+; Client() coutClient析构函数被调用endl; Clientnum-; static void ChangeServername() cout请输入服务器的名字:SeverName; void show();int Client:Clientnum=0;char Client:SeverName10=abcd;/Client.cppvoid Client:show() cout该用户机的服务器端名字是:endl; coutSeverNameendl; cout用户数量有: endl; coutClientnumendl;/Client.exevoid main() Cli
7、ent:ChangeServername(); Client a; a.show(); Client:ChangeServername(); Client b; b.show(); Client:ChangeServername(); Client c; c.show();实验五 数组、指针与字符串 一、 实验目的 1. 学习使用数组数据对象; 2. 学习字符串数据的组织和处理; 3. 学习标准C+库的使用; 4. 掌握指针的使用方法; 5. 练习通过debug观察指针的内容及其所指的对象的内容; 6. 练习通过动态内存分配实现动态数组,并体会指针在其中的作用; 7. 分别使用字符数组和标准C
8、+库练习处理字符串的方法。 二、 实验任务 1. 编写并测试33矩阵转置函数,使用数组保存33矩阵。 程序:#include#includevoid main() int a33,i,j; cout请输入一个3*3的矩阵:endl; for(i=0;i3;i+) for(j=0;jaij; cout该矩阵的转置为:endl; for(j=0;j3;j+) for(i=0;i3;i+) coutaij ; coutendl; 2. 使用动态内存分配生成动态数组来重新完成上题,使用指针实现函数的功能。 程序: #include #include #include void main() int i
9、,j,t; coutt; int *p=new intt; coutendl请输入一个n*n的矩阵元素:endl; for(i=0;ipi; cout该矩阵的转置为:endl; for(j=0;jsqrt(t);j+) for(i=0;it;) coutpj+it; i=i+sqrt(t); coutendl; 3. 编程实现两字符串的连接。要求使用字符数组保存字符串,不要使用系统函数。 #include #include void main() int i,j; char a20,b10; cout请输入一个不大于10个字符的字符串:a; cout请再输入一个不大于10个字符的字符串:b;
10、for(i=0;i10;i+) if(ai=0) j=i; break; for(i=0;i10;i+) ai+j=bi; if(bi=0) break; cout两字符串的连接得:endl; coutaendl; 4. 使用string类声明字符串对象,重新实现上一小题。#include#include#includevoid main() char a20,b10; cout请输入一个不大于10个字符的字符串:a; cout请再输入一个不大于10个字符的字符串:b; cout两字符串的连接得:endl; coutstrcat(a,b)endl; 5. 声明一个Employee类,其中包括姓
11、名、街道地址、城市和邮编等属性,以及change_name()和display()等函数。display()显示姓名、街道地址、城市和邮编等属性,change_name()改变对象的姓名属性,实现并测试这个类。 程序:#include#include#includeclass employeeprotected: char name10; / 姓名 char street20; / 街道地址 char city10; / 市 char prov10; / 省 char post7; / 邮政编码 int no; / 记录序号public: employee(char ,char ,char ,
12、char ,char ,int); void change_name(); void display();employee:employee(char n,char s,char c,char p1,char p2,int num) strcpy(name,n); strcpy(street,s); strcpy(city,c); strcpy(prov,p1); strcpy(post,p2); no=num;void employee:change_name() char n20; cout记录non; coutendl; strcpy(name,n);void employee:disp
13、lay() cout输出记录 noendl; cout 姓名:nameendl; cout 街道地址:streetendl; cout 市:cityendl; cout 省:provendl; cout 邮政编码postendlendl;void main() employee obj1(王华,中华路15号,武汉市,湖北省,430070,1); employee obj2(杨丽,天津路30号,南京市,江苏市,210020,2); obj1.display(); obj1.change_name(); obj1.display(); obj2.display(); obj2.change_nam
14、e(); obj2.display(); 6. 声明包含5个元素的对象数组,每个元素都是Employee类型的对象。/声明包含5个元素的对象数组,每个元素都是Employee类型的对象。#include#includeclass Employeeprotected: int Math; / 数学 int Chinese; / 语文 int English; / 英语 int Sport; / 体育 int Num; / 序号public: void N(int n) Num=n; void M(int m) Math=m; void C(int c) Chinese=c; void E(int
15、 e) English=e; void S(int s) Sport=s; void display() cout输出序号Numt数学:Matht语文:Chineset英语:Englisht体育:Sportendl; ;void main() Employee date10; int i,j,n,m,c,e,s; coutj; for(i=0;ij;i+) cout请依次输入序号、数学、语文、英语和体育成绩:nmces; datei.N(n); datei.M(m); datei.C(c); datei.E(e); datei.S(s); for(i=0;ij;i+) datei.displa
16、y();实验六 类与对象 一、 实验目的 1. 掌握类的声明和使用。 2. 掌握类的声明和对象的声明。 3. 复习具有不同访问属性的成员的访问方式。 4. 观察构造函数和析构函数的执行过程。 5. 学习类的组合使用方法。 二、 实验任务 1. 声明一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,其中,rank为字符型,其值可以为P1、P2等;frequency为单位是MHz的整型数;voltage为浮点型的电压值。 公有成员函数包括:GetRank()、GetFrequency()、GetVoltage()用来获取等级、频率、电压的值;SetRan
17、k、SetFrequency、SetVoltage用来设置等级、频率、电压的值;run、stop中run里面要求输出“CPU开始运行!”;stop里面要求输出“CPU停止运行!”。构造函数里面需要输出“构造一个CPU”,析构函数里面需要输出“析构一个CPU”。观察构造函数和析构函数的调用顺序。程序:/声明一个CPU类#include using namespace std;enum CPU_Rank p1=1,p2,p3,p4,p5,p6,p7;class CPUprivate: CPU_Rank rank; int freauency; float voltage;public: CPU(C
18、PU_Rank r, int f,float v) rank=r; freauency=f; voltage=v; cout构造一个CPU!endl; CPU() cout析构一个CPU!endl; void run() cout CPU开始运行!endl; void stop() cout CPU停止运行!endl; void show() cout rank=ranktfreauency=freauencytvoltage=voltageendl;int main() enum CPU_Rank rank; rank=p5; CPU cpu1(rank,1024,3.6); cpu1.run(); cpu1.show(); cpu1.stop(); return 0;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1