中国地质大学c++编程,其中有3个类CBank、BBank、GBank实习报告_中国地质大学c语言

实习报告 时间:2020-02-28 09:29:47 收藏本文下载本文
【www.daodoc.com - 实习报告】

中国地质大学c++编程,其中有3个类CBank、BBank、GBank实习报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“中国地质大学c语言”。

《面向对象与程序设计》

C++实习报告

老师:曹弘 班级:052126 姓名:方日忠

学号:20121002220 中国地质大学(武汉)

工程学院

实习题目:

一、(类的声明和友元函数)编写一个程序,其中有3个类CBank、BBank、GBank,分别为中国银行类、工商银行类、和农业银行类。每个类都包含一个私有数据balance用于存放储户在该银行的存款数据,另有一个友元函数max用于显示三家银行之中存款最多的银行和存款数据。

程序源代码:

#include #include cla CBank;cla BBank;

cla GBank;

cla CBank

//定义中国银行类CBank {

long int balance;public: CBank()

{balance=0;}

CBank(long int b)

{ balance=b;}

void getbalance()

{cout

cin >> balance;}

//输入存款金额

friend void total(CBank,BBank,GBank);

friend void max(CBank,BBank,GBank);};

cla BBank

//定义工商银行类BBank {long int balance;public: BBank()

{balance=0;}

//默认构造函数

BBank(long int b)

{balance=b;}

//构造函数

void getbalance()

{

cout

cin >> balance;}

//输入存款金额

friend void total(CBank,BBank,GBank);friend void max(CBank,BBank,GBank);};

cla GBank

//定义农业银行类GBank {

long int balance;public: GBank()

{balance=0;}

//默认构造函数

GBank(long int b)

{balance=b;}

//构造函数

void getbalance()

{

cout

cin >> balance;}

//输入存款金额

friend void total(CBank,BBank,GBank);friend void max(CBank,BBank,GBank);};

void total(CBank A,BBank B,GBank C)//定义求总的存款函数total {cout

void max(CBank A, BBank B, GBank C)//定义求存款最多银行的函数 {

long int max;char str[20];if(A.balance>B.balance)

{if(A.balance>C.balance)

{max=A.balance;

strcpy(str,“中国银行”);}

else

{max=C.balance;

strcpy(str,“农业银行”);} } else {if(B.balance>C.balance){max=B.balance;strcpy(str,“工商银行”);} else {max=C.balance;strcpy(str,“农业银行”);} } cout

void main(){

//定义CBank类的对象X //定义BBank类的对象Y //定义GBank类的对象Z

BBank Y;

GBank Z;X.getbalance();

Y.getbalance();

Z.getbalance();

total(X,Y,Z);} 运行截图: max(X,Y,Z);

二、(类的声明和运算符重载)设计一个日期类Date,要求:

(1)可以建立具有指定日期(年月日)的Date对象,默认日期为2014.6.6;

(2)可以从输出流输出一个格式为“年-月-日”的日期,其中年占4位数据,月日可以是1位或2位数据;

(3)可以动态设置年月日;

(4)可以用运算符==对两个日期进行是否相等的比较;

(5)主函数中测试该类;

程序源代码:

#include static int dys[]={31,28,31,30,31,30,31,31,30,31,30,31};

cla date {public: int yr,mo,da;date(int y,int m,int d)

//构造函数的声明

{yr=y;mo=m;da=d;} date(){}

//不带参数的构造函数 void disp(){cout

friend date operator +(int,date&);//加法运算符函数

date operator +(int day){

date dt=*this;

day+=dt.da;

while(day>dys[dt.mo-1])

{

day-=dys[dt.mo-1];

dt.mo++;

if(dt.mo==13)

{

dt.mo=1;

dt.yr++;

} }

dt.da=day;

return dt;} date operator-(int day)

//减法运算符函数

{

date dt=*this;

day=dt.da-day;

while(day

{

day+=dys[dt.mo-1];

dt.mo--;

if(dt.mo==0)

{dt.mo=12;

dt.yr--;}

}

dt.da=day;return dt;}};

void main(){ int y,m,d,a,b;cout

cout>y>>m>>d;date d1(y,m,d),d2,d3;d1.disp();if(olddate.yr==y&&olddate.mo==m&&olddate.da==d)//与默认日期比较是否相等

cout

//进行时间的加法 cout>a;d2=d1+a;d2.disp();cout>b;d3=d1-b;d3.disp();

//进行时间的加法

if(olddate.yr==d2.yr&&olddate.mo==d2.mo&&olddate.da==d2.da)//与计算后日期比较是否相等

} 运行截图:

cout

cout

实验总结:我的感受是:C++实习和平时上课所接触的程序是有很大不同的,所经受的考验和克服的困难是平时所无法比拟的。在这次实训中,我对对C++有了一个更深的了解认识,也对这个学期学的知识得到巩固,运行程序的成功,让我对实习充满信心。这次的实习,也使我们发现了许多问题。

在实习中,我们认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错误运行不出来,就会烦躁不安,以后要克服,尽量保持一颗良好的心态,学好C++,也学好用C++编写一个按要求的系统,我觉得我还有许多方面需要提高。

下载中国地质大学c++编程,其中有3个类CBank、BBank、GBank实习报告word格式文档
下载中国地质大学c++编程,其中有3个类CBank、BBank、GBank实习报告.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文