福建师范大学-C++实验02+ 类和对象(2).doc_第1页
福建师范大学-C++实验02+ 类和对象(2).doc_第2页
福建师范大学-C++实验02+ 类和对象(2).doc_第3页
福建师范大学-C++实验02+ 类和对象(2).doc_第4页
福建师范大学-C++实验02+ 类和对象(2).doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

福建师范大学实验报告课程: c+程序设计 实验名称: 类和对象(2) 系 别: 实 验 日 期 2013/4/23 专业班级: 实 验 报 告 提交日 期 2013.4.20 姓 名: 学号: 教 师 审 批 签 字 一、实验题目: 类和对象(二)二、实验目的(1)进一步加深对类和对象的理解。(2)掌握类的构造函数和折购函数的概念和使用方法。(3)掌握对对象数组,对象的指针及其使用方法。(4)掌握友元的概念和使用。(5)了解类模板的使用方法。三、实验内容(1)有以下程序:1、 参考逆向工程得到的类图: 2、 阅读此程序,分析其执行过程,然后上机运行,对比输出结果。运行结果对比如下:4、 修改上面的程序,增加一个fun函数,改写main函数,在main函数中调用fun函数,在fun函数中使用对象的引用(Student&)作为形参。运行结果如下:#includeusing namespace std;class Studentpublic:Student(int n, float s) num=n;score=s;void change(int n,float s)num=n;score=s;void display()coutnumscoreendl;void fun(Student&)cout你好!endl; private:int num;float score;int main()Student stud(101,78.5);stud.display();stud.change(101,80.5);stud.display();stud.fun(stud);return 0;(2)商店销售某一商品,商店每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受9.8折优惠。现已知当天3个销售员销售情况为:销售员号(num)销售件数(quantity)销售单价(price)101523.51021224.5610310021.5请编程序,计算出当日此商品的总销售款sum以及每件商品的平均售价。要求用静态数据成员和静态成员函数。1、 UML类图:2、 源代码:#include using namespace std; class salesman private: static double discount; static double sum; static int n; int num; float price; public: salesman(int a,double b):num(a),price(b) ; static float average() return(sum/n); ; static void shuchu() cout计算出当日此商品的总销售款以及每件商品的平均售价(要求用静态数据成员和静态成员函数。):endl总 销 售 款 是:sumendl平 均 售 价是:salesman:average()=10) price=price*0.98; sum+=num*price*discount; n+=num; ; ; double salesman:discount=0.98; int salesman:n=0; double salesman:sum=0; int main() salesman s1(5,23.5); s1.total(); salesman s2(12,24.56); s2.total(); salesman s3(100,21.5); s3.total(); salesman:shuchu(); return 0; 3实验结果:(3)有以下程序:请读者分析和运行此程序,注意友元函数Time:display的作用。将程序中的display函数不放在Time类中,而作为类外的普通函数,然后分别在Time和Date两个类的对象的私有数据,输出年、月、日和时、分、秒。修改后上机调试和运行,运行如果:#includeiostreamusing namespace std; class Date; class Time public: Time(int,int,int); friend void display(const Date &,const Time &); private: int hour; int minute; int sec; ; class Date public: Date(int,int,int); friend void display(const Date &,const Time &); private: int month; int day; int year; ; Time:Time(int h,int m,int s) hour=h; minute=m; sec=s; Date:Date(int m,int d,int y) month=m; day=d; year=y; void display(const Date &da1,const Time &da2) coutda1.month/da1.day/da1.yearendl; coutda

温馨提示

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

评论

0/150

提交评论