C_?? 2017-06-27 05:18 采纳率: 33.3%
浏览 1644

这是个网上购书的购物车系统代码,我把C语言形式转化为C++形式求纠错,在线等捉急!

class cart{
protected:
int bookID;
string bookname;
double price;
double discount;
int number;
double total;
public:
cart(int b_id,string b_na,double pr,int n,double d,int t)
{
bookID=b_id;
bookname=b_na;
price=pr;
number=n;
double=d;
total=t;
}

void SelectFunction()
{
int number=0;
do{
    menu();
    cout<<"请输入数字选择:\n";
    cin>>number;
    switch(number){
    case 1:
        Add();
        break;
    case 2:
        Remove();
        break;
    case 3:
        MendShoppingList();
        break;
    case 4:
        display();
        break;
    default:
        break;
    }
}while(number!=5);

}

void Add(book *b[])
{
    int bookID=0,number=0;
    cout<<"请输入书号:\n";
    cin>>bookID;
    cout<<"请输入购买数量:\n";
    cin>>number;
    int flag=0;
    for(int i=0;i<3;i++){
        if(b[i].bookID==bookID){
            b[i].number+=number;
            flag=1;
            cout<<"添加书本成功!\n";
            break;
        }
    }
    if(flag==0){
        cout<<"没有该书籍\n";
    }
}



void Remove(book *b[])
{
    int bookID=0,number=0;
    cout<<"请输入书号:\n";
    cin>>bookID;
    cout<<"请输入购买数量:\n";
    cin>>number;
    int flag=0;
    for(int i=0;i<3;i++){
        if(b[i].bookID==bookID && b[i].number>0)
        { b[i].number=0;
          flag=1;
          cout<<"删除书本成功!\n";
          break;
        }
    }
    if(flag==0)
    { cout<<"没有该书籍\n";
    }
}

void MendShoppingList(book *b[])
{
    int bookID=0,number=0;
    cout<<"请输入书号:\n";
    cin>>bookID;
    cout<<"请输入购买数量:\n";
    cin>>number;
    int flag=0;
    for(int i=0;i<3;i++){
        if(b[i].bookID==bookID && b[i].number>0)
        { b[i].number-=number;
          flag=1;
          cout<<"修改成功!\n";
          break;
        }
    }
    if(flag==0)
    { cout<<"书本没有加入购物车\n";
    }
}


void total(book *b[])
{
    cout<<"********当前购物车书籍********\n";
    double sum=0;
    for(int i=0;i<3;i++){
        if(b[i].number>0){
            cout<<b[i].bookID<<\t\tb[i].bookname<<\t\tb[i].price<<\t\tb[i].discount<<\t\tb[i].number<<\t\tb[i].total;
            sum+=b[i].total;
        }
    }
    cout<<"当前总额:\t"<<sum\n;
}


void display()
{
    cout<<"********************\n";
    cout<<"1.添加书本\n";
    cout<<"2.修改书本\n";
    cout<<"3.删除书本列表\n";
    cout<<"4.显示总额\n";
    cout<<"********************\n";
}

};

  • 写回答

2条回答 默认 最新

  • 温良岁月 2017-06-27 06:22
    关注

    错误太多,都是最基础的错误 \t\t 这个不加引号是什么? book 在哪里定义过。。。。都是这种级别的错误

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题