版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/navicheung/article/details/82458455
C++程序设计(第三版) 谭浩强 习题9.9 个人设计
习题 9.9 商店销售某一商品,商店每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受9.8折优惠。现已知当天3名销货员的销售情况为:
101 5 23.5
102 12 24.56
103 100 21.5
请编程序,计算出当日此商品的总销售款sum,以及每件商品的平均售价。要求用静态数据成员和静态成员函数。
代码块:
#include <iostream>
using namespace std;
class Sale
{
public:
Sale(int n, int q, double pri): num(n), qua(q), price(pri){};
static double average(Sale *, int n);
static void display(Sale *, int n);
private:
int num;
int qua;
double price;
static double discount;
static double sum;
static int count;
};
double Sale::discount=0.98;
double Sale::sum=0;
int Sale::count=0;
double Sale::average(Sale *cc, int n)
{
Sale *p;
for (p=cc; p<cc+n; p++){
if (p->qua>10)
p->price*=discount;
sum+=((p->price)*(p->qua));
count+=p->qua;
}
return sum/count;
}
void Sale::display(Sale *cc, int n)
{
cout<<"Average= "<<Sale::average(cc, n)<<endl;
cout<<"Sum= "<<Sale::sum<<endl;
}
int main()
{
Sale s[3]={
Sale(101, 5, 23.5),
Sale(102, 12, 24.56),
Sale(103, 100, 21.5)
};
Sale::display(s, 3);
system("pause");
return 0;
}