商店销售某一商品,允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受9.8折优惠,现已知当天3名售货员销售情况如下:
售货员号(num) 售货数量(quantity) 售货单价(price)
101 5 23.5
102 12 24.56
103 100 21.5
请编程序,计算出当日此商品的总销售款sum,以及当天商品的平均售价.要求用静态数据成员和静态成员函数.
(提示:售货单价为折扣前的价格。将折扣discount、总销售款sum和商品销售总件数n声明为静态数据成员,再定义静态成员函数average(求平均售价)和display(输出结果)。
类图:
代码如下:
头文件(pri.h)代码如下:
#pragma once
class pri {
private:
int num;//销售员号
int quantity;//销售数量
float prite;//销售单价
static float discount;//折扣
static float sum;//销售总额
static int n;//销售总数
public:
void sell(int nu,int q, float p);//输入
static float average();//求平均售价
void display();//s输入结果
pri();//初始化
void getnq();//得到销售员的销售情况
};
main文件代码如下:
#include"pri.h"
#include<iostream>
using namespace std;
float pri::discount = 0.98;
float pri::sum = 0;
int pri::n = 0;
pri::pri()
{
num = 0;
quantity = 0;
prite = 0;
}
void pri::sell(int nu,int q, float p) {
num = nu;
quantity = q;
prite = p;
n += q;
if (q >= 10)
{
sum = sum + q * p * discount;
}
else
sum = sum + q * p;
}
float pri::average()
{
return sum / n;
}
void pri::getnq()
{
cout <<"销售员:"<< num << endl;
cout <<"销售数量:"<< quantity << endl;
cout <<"销售单价:"<< prite << endl;
cout << endl;
}
void pri::display() {
cout << "当天销售情况如下:" << endl;
cout << "总销售额:" << sum << endl;
cout << "平均售价:" << average() << endl;
}
int main()
{
pri p1,p2,p3;
p1.sell(101,5, 23.5);
p1.getnq();
p2.sell(102,12, 24.56);
p2.getnq();
p3.sell(103,100, 21.5);
p3.getnq();
p1.display();
return 0;
}
运行结果如下:
代码仅供参考