实验六 静态成员.doc_第1页
实验六 静态成员.doc_第2页
实验六 静态成员.doc_第3页
实验六 静态成员.doc_第4页
全文预览已结束

下载本文档

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

文档简介

实验六 静态成员1、 实验目的掌握类中静态成员的定义方法,掌握静态数据成员的初始化方法、静态数据成员和静态成员函数的访问和使用方法。2、 实验内容(1) 商店销售某一商品,商店每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受9.8折优惠。现已知当天3名销货员的销售情况为: 销货员号(num) 销货件数(quantity) 销货单价(price)101 5 23.5102 12 24.56103 100 21.5请编程序,计算出当日此商品的总销售款sum,以及每件商品的平均售价。要求用静态数据成员和静态成员函数。(提示: 将折扣discount、总销售款sum和商品销售总件数n声明为静态数据成员,再定义静态成员函数average(求平均售价)和display(输出结果)。/ 123.cpp : 定义控制台应用程序的入口点。/#include stdafx.h#include using namespace std;class productprivate:int num,quantity;float price;static float discount,sum;static int n;public :product (int m,int q,float p):num(m),quantity(q),price(p);void total();static float average();static void display();void product:total()float rate =1.0;if (quantity10)rate=rate*0.98;sum=sum+quantity*price*rate*(1-discount);n=n+quantity;void product:display()coutsumendl;coutaverage()endl;float product:average()return (sum/n);float product:discount =0.05;float product:sum =0;int product:n=0;int _tmain(int argc, _TCHAR* argv)product prod3=product(101,5,23.5),product(102,12,24.56),product(103,100,21.5);for(int i=0;i3;i+)prodi.total ();product:display();return 0;(2) 编写程序,统计歌手大赛参赛人数,每名选手的平均得分。要求一个输入选手的编号、姓名、3名评委的打分;输出参赛总人数,并按平均分由高到低的顺序输出每位选手的名次、姓名、平均得分。提示:将参赛人数声明为静态数据成员,定义一个歌手对象数组。/ 123.cpp : 定义控制台应用程序的入口点。/#include stdafx.h#include using namespace std;/编写程序,统计歌手大赛参赛人数,每名选手的平均得分。/要求一个输入选手的编号、姓名、名评委的打分;输出参赛总人数,/并按平均分由高到低的顺序输出每位选手的名次、姓名、平均得分。class singerprivate :int num;char name;int score1;int score2;int score3;static int sum;public:singer(int n,char na,int s1,int s2,int s3)num=n;name=na;score1=s1;score2=s2;score3=s3;sum=sum+1;singer()num=0,name= ,score1=0;score2=0;score3=0;void order(singer s)int n=singer:sum;singer temp;for (int i=0;in;i+)for(int j=0;j(sj.score1 +sj.score2+sj.score3)/3.0)temp=si;si=sj;sj=temp;void display(singer s)coutrank name scoreendl;int n=singer:sum;for(int i=0;in;i+)couti+1 (si.score1 +si.score2+si.score3)/3.0 endl;int singer:sum =0;int _tmain(int argc, _TCHAR* argv)singer s3=singer(101,a,100,89

温馨提示

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

评论

0/150

提交评论