#include<bits/stdc++.h>
using namespace std;
class CSaler{
int num; //销货员号
int quantity; //销货件数
double price; //销货单价
static double sum; //总销售款
static double ave;//平均售价
static int n; //售出商品总件数
public:
void sale(int x); //售出商品x件 每次调用该函数,则把销货件数加x
static void average(); //求平均售价
void total();
};
void CSaler::sale(int x){
CSaler(){
quantity+=x;
}
~CSaler(){
quantity-=x;
}
}
double CSaler::sum=0;
double CSaler::ave=0;
void CSaler::total(){
double val=quantity*price;
sum+=val;
}
void CSaler::average(){
ave=sum/n;
}
int main(){
CSaler saler1,saler2,saler3;
saler1.num=101;
saler1.quantity=5;
saler1.price=23.5;
saler1.num=102;
saler1.quantity=12;
saler1.price=22.5;
saler1.num=103;
saler1.quantity=100;
saler1.price=21.5;
int CSaler::n+=quantity;
total();
average();
}
17到24行你要整构造和析构函数吗?头文件加申明啊
大概修改如下:
class CSaler{
int num; //销货员号
int quantity; //销货件数
double price; //销货单价
static double sum; //总销售款
static int n; //售出商品总件数
public:
CSaler() {}
CSaler(int n,int q,double p) {num = n;quantity = q;price = p;sale(q);total(n,p);}
void sale(int x); //售出商品x件 每次调用该函数,则把销货件数加x
static double average(); //求平均售价
static void total(int q,double p);
};
void CSaler::sale(int x){
n+=x;
}
double CSaler::sum=0;
int CSaler::n=0;
void CSaler::total(int q,double p)
{
sum += q*p;
}
double CSaler::average()
{
return sum/n;
}
int main(){
CSaler saler1(101,5,23.5),saler2(102,12,22.5),saler3(103,100,21.5);
cout<<"平均售价为:"<< CSaler::average()<<endl;
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!