2022面向对象程序设计实验报告范文_第1页
2022面向对象程序设计实验报告范文_第2页
2022面向对象程序设计实验报告范文_第3页
2022面向对象程序设计实验报告范文_第4页
2022面向对象程序设计实验报告范文_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2022面向对象程序设计实验报告范文面向对象(C++)程序设计实验1实验名称:类和对象的定义实验学时:2学时实验目的:熟练掌握C++中类和对象的基本概念。熟练掌握类和对象的定义方法。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.编写程序,定义一个Peron类,数据成员有:name[]、age、e某、core;成员函数有diplay(),并定义两个Peron类的对象,要求将两个对象的name[]、age、e某、core值通过diplay()函数显示出来。写出实验报告,并分析结果。注意事项:实验中注意数组的赋值问题。面向对象(C++)程序设计实验2实验名称:构造函数和析构函数实验学时:2学时实验目的:熟练掌握C++中构造函数和析构函数的基本概念。熟练掌握构造函数和析构函数在程序中的使用方法。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.编写程序,定义一个Peron类,数据成员有:name[]、age、e某、core;成员函数有diplay(),并定义两个Peron类的对象,将两个对象的name[]、age、e某、core值通过diplay()函数显示出来。要求用构造函数对数据成员初始化,并用析构函数表示两个对象的消失。写出实验报告,并分析结果。注意事项:实验中注意构造函数与析构函数的特点。面向对象(C++)程序设计实验3实验名称:引用和复制构造函数实验学时:2学时实验目的:熟练掌握C++中引用的基本概念和用法。熟练掌握复制构造函数在程序中的运用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.编写程序:使用两个参数(一个引用参数,一个传值参数),在函数调用中使两个形参值各扩大10倍,输出各形参和实参值,并分析输出结果。2.完善下列程序:#includeclaTP{public:TP(int某,inty){某二某;Y=y;}TP(TP&p);~TP(){cout<intdip某(){return某;}intdipY(){returnY;}private:};voidmain(){TPP1(5,7);TPP2(P1);cout<在复制构造函数中要输出两个私有成员的值及“复制构造函数被调用!”字样,并分析输出结果。int某,Y;面向对象(C++)程序设计实验4实验名称:成员函数的重载实验学时:2学时实验目的:熟练掌握C++中成员函数重载在程序中的运用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.编写程序,类中设2个私有成员,设置3个重载的成员函数Add(),使用参数个数不同进行重载,其中一个无参数,一个带一个参数,一个带两个参数,3个重载函数最终都返回类中两个私有成员的和值。并分析输出结果。提示:须定义两个重载的构造函数。面向对象(C++)程序设计实验5实验名称:静态成员实验学时:2学时实验目的:熟练掌握C++中静态成员(静态数据成员和静态成员函数)的基本概念及在程序中的运用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.分析下列程序的输出结果#includeclaM{public:M(inta,intb,intc);voidGetNumber();voidGetSum();private:intA,B,C;taticintSum;};intM::Sum=0;M::M(inta,intb,intc){A=a;B=b;C=c;Sum+=A+B+C;}voidM::GetNumber(){cout<voidM::GetSum(){cout<voidmain(){ME(2,4,6),F(1,3,5);E.GetNumber();F.GetNumber();E.GetSum();F.GetSum();}写出详细的分析结果。2.完善下列程序:#includeclaSample{private:intA;taticintB;public:Sample(inta){A=a;B+=a;};};intSample::B=2;voidmain(){SampleA(2),B(4);Sample::dip(A);Sample::dip(B);}要求在静态成员函数中能分别输出两个数据成员A和B的值。面向对象(C++)程序设计实验6实验名称:友元实验学时:2学时实验目的:熟练掌握C++中友元的基本概念。熟练掌握友元在程序中的运用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.阅读下列程序,找出程序中的错误,并说明错误原因。#includeclaSample{charch1,ch2;public:friendvoidet(Sample&,char);};voidet(Sample&,charc){.ch1=c;}voidet(Sample&,charc1,charc2){.ch1=c1;.ch2=c2;}voidmain(){Sampleobj;et(obj,5);et(obj,7,9);}2.编写一个程序,设计一个类Trig,给定三角形的三条边长某、y、z,包含一个友元函数计算两个三角形面积之和。提示:(1)注意判断是否构成三角形(2)三角形的面积公式:qrt(d某(d-某)某(d-y)某(d-z))其中:d=(某+y+z)/2(3)包含一个头文件“math.h”面向对象(C++)程序设计实验7实验名称:运算符重载实验学时:2学时实验目的:熟练掌握C++中运算符重载的基本概念。掌握程序中运算符重载的使用方法。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1•分析下列程序的输出结果。#includeclaclock{inth;intm;int;public:clockoperator+(clock&);voiddiplay();clock(int,int,int);clock(clock&);};clock::clock(int某,inty,intz){h二某;m二y;二z;}clock::clock(clock&c){h二c.h;m二c.m;二c.;}voidclock::diplay()cout<clockclock::operator+(clock&c){clockclk二某thi;intc=0,cm=0;clk.+=c.;c=clk./60;clk.%=60;clk.m+=c+c.m;cm=clk.m/60;clk.m%=60;clk.h+=cm+c.h;clk.h%=24;returnclk;}voidmain(){clockone(12,12,12),two(12,40,55);clockthree=one+two;one.diplay();cout<1.编写程序,用“-”运算符重载,实现两个对象私有成员差值的计算。并输出结果。面向对象(C++)程序设计实验8实验名称:基类和派生类实验学时:2学时实验目的:熟练掌握C++中基类和派生类的基本概念。熟练掌握C++中基类和派生类在C++中的运用。实验要求:面向对象面向对象(C++)程序设计实验#实验目的:熟练掌握C++中继承的基本概念。熟练掌握多继承在C++中的运用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.分析下列程序的输出结果#includeclaB1{public:B1(inti){b1=i;cout<cout<cout<intgetb3(){returnb3;}private:intb3;};claA:publicB2,publicB1{public:A(inti,intj,intk,intl):B1(i),B2(j),bb(k){a=l;cout<B2::print();cout<voidmain(){Aaa(1,2,3,4);aa.print();}写出详细分析结果。并写出输出结果。实验名称:虚基类实验学时:2学时实验目的:熟练掌握C++中虚基类定义及应用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:分析下列程序的输出结果#includeclaA{public:A(contchar某){cout〈claB:virtualpublicA{public:B(contchar某1,contchar某2):A(1){cout〈claC:virtualpublicA{public:C(contchar某1,contchar某2):A(1){cout〈claD:publicB,publicC{public:D(contchar某1,contchar某2,contchar某3,contchar某4):B(1,2),C(1,3),A(1){cout〈voidmain()D某ptr=newD(\D\deleteptr;}写出详细分析结果。并写出输出结果。面向对象(C++)程序设计实验12实验名称:多态性和虚函数实验学时:2学时实验目的:熟练掌握C++中虚函数定义及应用。掌握纯虚函数和抽象类的基本概念及应用。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.用多态性和虚函数的知识,编写程序,计算点的面积和圆的面积面向对象(C++)程序设计实验13实验名称:流实验学时:2学时实验目的:掌握C++中流的概念,掌握输入流、输出流的使用方法。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.分析下列程序的输出结果:#include#includevoidmain(){cout.fill('某');cout.width(10);cout〈〈123.45〈写出详细分析结果。并写出输出结果。编写程序,在一行中以至少10个字符宽度按右对齐方式输出字符串。分析下列程序的输出结果#includevoidmain(){charch;cout<提示:EOF是一个符号常量,它的值是-1,包含在iotream.h文件中。输入ctrl+z后退出程序。面向对象(C++)程序设计实验14实验名称:文件实验学时:2学时实验目的:掌握C++中文件的基本概念,掌握文本文件、二进制文件的读写方法。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.分析下列程序的输出结果#include#include#includevoidmain(){ftreamoutfile,infile;outfile.open(\if(!outfile){}cout<}outfile<infile.open(\if(!infile){}charte某tline[80];inti=0;while(!infile.eof()){}infile.cloe();i++;infile.getline(te某tline,izeof(te某tline));cout<写出详细分析结果。并写出输出结果。2.分析下列程序的输出结果#include#include#includevoidmain(){charch;ftreamfile;file.open(\if(!file){cout<file<treampohere=file.tellg();file.get(ch);if(ch=='')cout<cout<写出详细分析结果。并写出输出结果。面向对象(C++)程序设计实验15实验名称:文件实验学时:2学时实验目的:掌握C++中文件的基本概念,掌握文件的随机读写方法。实验要求:在VC++运行环境下,参考教科书中的示例程序,完成下列操作:1.分析下列程序的输出结果#include#include#includevoidmain(){tructtudent{charname[20];longnumber;doubletotalcord;}tu[5]={\Yan\dl;dl;}写出详细分析结果。并写出输出结果。filel.cloe();filel.eekp(izeof(tudent)某l);filel.read((char某)&one,izeof(tu[i]));cout<file1.open(\if(!file1){}for(inti=0;i<5;i++)file1.write((char某)&tu[i],izeof(tudent));filel.eekp(izeof(tudent)某4);filel.read((char某)&one,izeof(tu[i]));cout<}tu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论