77范文网 - 专业文章范例文档资料分享平台

重庆邮电大学C++实验报告(2)

来源:网络收集 时间:2020-04-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Calc c; double x,y; int z;

cout<<\请输入贷款总额、年利率、还贷月数:\cin>>x>>y>>z; c.setData(x,y,z); while(c.left>0){ c.print(); }

return 0;}

三、 实验输出:

四、实验心得

进一步了解类的设计,提高抽象问题的能力,积累更多的类设计的技巧和编程经验,对面向对象程序设计有更清晰的理解。

实验四 类的设计和对象的创建

【实验 2-3】 积分返券

(见《C++面向对象程序设计习题解析与实验教程》第39页。)

一、问题描述:

某商场年终举行“积分返券”活动,其规则为:每张会员卡积满1000分返礼券10元,积满3000分返礼券30元,积满5000分返礼券100元,返券的同时,消除礼券对应的积分。编程帮助商场实现返券活动。

二、程序代码:

(1)类的声明:

class card{ char *id; char *name; double s,r; public: card(char* pid,char* pname,double ps):id(pid),name(pname),s(ps),r(0){} void reward(); void print(); };

(2)主要成员函数:

void card::reward(){ if(s>=1000 &&s<3000){r=10;s-=1000;} else if(s>=3000 &&s<5000){r=30;s-=3000;} else if(s>=5000){r=100;s-=5000;} }

(3) 主函数main()的实现:

void main(){

card m(\刘明\

cout<<\返券前***********\ m.print(); m.reward();

cout<<\返券后***********\ m.print(); }

三、实验输出:

【实验 2-4】 设计实时更新的时间类Time

(见《C++面向对象程序设计习题解析与实验教程》第42页。)

一、 问题描述:

设计能按照系统时间实时更新的Time类。

二、 程序代码:

(1) Time类的声明

class Time{

int hour,minute,second; public: Time(); Time(int h,int m,int s); void tick(); void printU(); void printS(); int getH(){return hour;} int getM(){return minute;} int getS(){return second;} void setTime(int h,int m,int s){hour=h;minute=m;second=s;} void setH(int h){hour=h;} void setM(int m){minute=m;} void setS(int s){second=s;} };

(2) 缺省构造函数

Time::Time(){ const time_t now=time(NULL); tm local=*localtime(&now); hour=local.tm_hour; minute=local.tm_min; second=local.tm_sec; }

(3) 关键成员函数

void Time::tick(){ second++; if(second/60){ minute++; setS(0); if(minute/60){ hour++; setM(0);

}

}

}

if(hour/24){ setTime(0,0,0); }

(4) 主函数main()的实现

void main(){ Time now;

long t1=time(NULL),t2; now.printU(); while(!-kbhit()){ t2=time(NULL); if(t2-t1==1){ system(\ t1=t2; now.tick(); now.printU(); } } }

三、 实验输出:

实验四 对象指针和对象引用

【实验 3-1】比较两个分数的大小 一、 问题描述:

设计分数类Fraction,它具有分子和分母两个数据成员,具有构造函数和读

取分子、分母值的成员函数。定义全局函数compare(),其功能是比较两个分数大小,若相等,返回0;若第一个分数大于第二个,返回1;小于则返回-1。为简单起见,暂不考虑约分问题。

二、 程序代码: 三、

Fraction类:

class Fraction{ public:

Fraction(int n,int d);

int getNum(){return numerator;} int getDenom(){return denominator;} private:

int numerator; //分子 int denominator; //分母 };

全局compare()函数:

int compare(Fraction f1,Fraction f2){ int f1n=f1.getNum(); //f1的分子 int f1d=f1.getDenom(); //f1的分母 int f2n=f2.getNum(); int f2d=f2.getDenom(); int com=f1n*f2d-f2n*f1d; if(com>0) return 1; else if(com<0) return -1; else return 0; }

【实验 3-2】 模拟存钱罐

(见《C++面向对象程序设计习题解析与实验教程》第70页。) 一、问题描述:

可以将币值为1角、5角、1元、5元、10元的零钱存入钱罐中,最多能存放100张。

编程模拟存钱罐功能:用户按一次回车键代表存入一个零钱,币值随机。当用户按除回车键外的任意键后,程序打印出存钱总额,并分类统计出各类币值的零钱分别是多少。

二、程序代码:

(1) Money类的声明

class Money{ double value; public: Money(); double getV() {return value;} };

(2) Savebox类的声明

class Savebox{

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库重庆邮电大学C++实验报告(2)在线全文阅读。

重庆邮电大学C++实验报告(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/983696.html(转载请注明文章来源)
上一篇:SEM精选试题
下一篇:施工方案
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: