题目描述:
商店销售某一商品,每天公布统一的折扣(discount)。同时,允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受98折优惠。现已知当天3个销售员销售情况为
销售员号(num) 销售件数(quantity) 销售单价(price)
101 5 23.5
102 12 24.56
103 100 21.5
请编程序,计算出当日此商品的总销售款sum以及每件商品的平均售价。要求用静态数据成员和静态成员函数。
输入:
统一的折扣是98折;
销售员号(num) 销售件数(quantity) 销售单价(price)
101 5 23.5
102 12 24.56
103 100 21.5
输出:
总销售款sum=2513.33
每件商品的平均售价average=21.4814
示例:
input
sale s1(5,23.5); sale s2(12,24.56); sale s3(100,21.5);
output
sum=2513.33 average=21.4814
提示:
将折扣discount、总销售款sum和商品销售总件数n,声明为静态数据成员,再定义静态成员函数average(求平均售价)和display(输出结果),输出结果要和样例一致才能通过,变量名和函数名可以自己定义,不一定要和给定的一样。
#include<iostream>
using namespace std;
//类的定义
class shangdian
{
public:
static float num();
static void display(float,int);
static int shuru1();
static int shuru2();
static int shuru3();
//static int shuru();
private:
static float discount, sum;
static int quantity;
static float price;
};
//初始化静态数据
float shangdian::discount = 0;
float shangdian::sum = 0;
//float shangdian::n = 0;
int shangdian::quantity = 0;
float shangdian::price = 0;
//计算总价
float shangdian::num( )
{
float zongjia;
if (quantity >= 10)
{
discount = 0.98;
price = price * discount;
zongjia = price * quantity;
}
else
{
discount = 1;
zongjia = price * quantity;
}
return zongjia;
}
//输出总价与平均值
void shangdian::display(float z,int n)
{
sum = z;
float average;
average = sum / n;
cout << "sum=" << sum << " " << "average=" << average<<endl;
}
//输入所需
/*int shangdian::shuru()
{
int haoma;
cin >> haoma;
cin >> quantity;
cin >> price;
return quantity;
}*/
int shangdian::shuru1()
{
quantity = 5;
price = 23.5;
return quantity;
}
int shangdian::shuru2()
{
quantity = 12;
price = 24.56;
return quantity;
}
int shangdian::shuru3()
{
quantity = 100;
price = 21.5;
return quantity;
}
int main(){
float zongjia1;
int s;
// cout << "销售员号" << " " << "销售件数" << " " << "销售单价" << endl;
//s=shangdian::shuru();
s=shangdian::shuru1();
zongjia1=shangdian::num();
// s=shangdian::shuru()+s;
s=s+shangdian::shuru2();
zongjia1 = zongjia1 + shangdian::num();
// s=shangdian::shuru()+s;
s=s+shangdian::shuru3();
zongjia1 = zongjia1 + shangdian::num();
shangdian::display(zongjia1,s);
return 0;
}