C++收银程序 (急啊) 希望给出 详细解答 谢谢了-_-

来源:百度知道 编辑:UC知道 时间:2024/05/25 06:13:43
试建立一个类Sale用于描述销售活动,具体要求如下:
 私有数据成员
int sid: 商品编号。
float price: 商品价格。
int quantity: 该商品库存数量。
 公有成员函数
(1) 缺省构造函数:初始化数据成员为0或NULL值。
(2) 带参构造函数:用参数初始化数据成员。
(3) void List( ): 输出本对象的数据信息。
(4) void Modify(… ): 用给定的参数修改数据成员的值。(自己定义参数)
(5) int Sell(int n):卖出本商品n件。先比较quantity和n值,若quantity≥n,计算应付金额total(n>10优惠10%,n>30优惠20%)。修改该商品库存数量quantity,输出商品编号、价格、购买数量与应付金额,并返回1。否则,显示提示信息“库存数量不够”和quantity值并返回0。
 主函数:定义不少于3个并取不同值的Sale对象作为测试数据。对计算操作的返回值进行判断,根据是否进行了优惠输出提示信息。应使每个成员函数至少被调用一次。
哪位 高手 帮帮我

我有许多疑问

55555555555555555
谢谢了

// Sale.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "iostream"

using namespace std;

class Sale{
public:
//默认构造函数
Sale():m_sid(0),m_price(0),m_quantity(0)
{}
//带参数构造函数
Sale(int sid,float price,int quantity)
{
m_sid=sid;
m_price=price;
m_quantity=quantity;
}
/*列出商品信息*/
void List()
{
cout<<"商品编号:"<<m_sid<<endl;
cout<<"商品价格:"<<m_price<<endl;
cout<<"商品库存:"<<m_quantity<<endl;
}
/*
修改商品
flag=0:修改编号
flag=1:修改价格
flag=2:修改库存
*/
void Modify(float input,int flag)
{

if (flag==0) m_sid=(int)input;
if (flag==1) m_price=input;
if (flag==2) m_quantity=(int) input;
}
/*
卖出商品,n=卖出商品数量
*/
int Sell(int n)
{
float total=0;