资源简介

收藏夹和购物车系统的实现  收藏夹子系统 (1) 【收藏指定图书】能收藏一本图书,并记录收藏日期(某年某月某日,如2016-12-12。所有日期都采用人工定义方式输入,不取机器日期)。图书的信息包括图书号(是唯一的)、书名、作者、出版社、出版日期、价格。 (2) 【查询指定图书】能按照图书号查询显示收藏夹中图书的相关信息(也可以扩展功能为按照书名、作者、出版社、出版日期、指定价格大小范围查询显示收藏夹中图书的相关信息)。 (3) 【按日期显示所有图书】能按照收藏日期的先后显示输出所收藏的所有图书的相关信息。 (4) 【移出收藏夹】可以把不想收藏的某一本指定图书号的图书直接移出收藏夹。 (5) 【加入购物车】将收藏夹中的某一本指定图书号的图书加入到购物车。 (6) 【按价格显示所有图书】能按照价格的大小显示输出收藏夹中的所有图书的相关信息。  购物车子系统 (1) 【直接加入购物车】把准备购买的一本图书直接加入购物车,同时记录加入购物车的日期。图书的信息包括图书号(是唯一的)、书名、作者、出版社、出版日期、价格、购买数量、购买金额(自动计算)。 (2) 【查询指定图书】能按照图书号查询显示购物车中准备购买的图书的相关信息(也可以扩展功能为按照书名、作者、出版社、出版日期、指定价格大小范围查询显示购物车中图书的相关信息)。 (3) 【修改购买数量】可以修改购物车中准备购买的某一本指定图书号的图书的数量,同时自动计算修改购买金额(购买金额=购买数量*价格)。 (4) 【删除指定图书并移到收藏夹】把购物车中的某一本指定图书号的图书删除并移到收藏夹。 (5) 【直接删除指定图书】可以把不想购买的某一本指定图书号的图书从购物车中删除。 (6) 【按图书号显示所有图书】把购物车中所有图书按照图书号列出每一本图书的图书号、书名、作者、出版社、出版日期、价格、购买数量、购买金额,最后列出总共有多少本图书、总金额是多少。

资源截图

代码片段和文件信息


#include
#include
#include
using namespace std;
enum Status {
SUCCESS FALL NOT_PRESENT ENTRY_FOUND RANGE_ERROR
};

/*图书信息包括:图书号、书名、作者、出版社、出版时间、价格*/
struct BookInforNode
{
//数据成员
long long ISBN; //图书号
string title; //书名号
string Author; //作者
string Press; //出版社
int PublicDate[3]; //出版时间,[0]年,[1]月,[2]日
float Price; //价格

//构造函数
BookInforNode();
BookInforNode(string tiltle string author int iSBN string press int publicData[] float price);
};

//无参数的构造函数

BookInforNode::BookInforNode()
{
ISBN = 0;
title = “a“;
Author = “a“;
Press = “a“;
for (int i = 0; i < 3; i++)
PublicDate[i] = 0;
}

//有参数的构造函数
BookInforNode::BookInforNode(string title string author int iSBN string press int publicDate[] float price)
{
ISBN = iSBN;
title = title;
Author = author;
Press = press;
for (int i = 0; i < 3; i++)
PublicDate[i] = publicDate[i];
}

template
struct favoritesNode   //收藏夹內书本节点
{
ElemType bookData;  //书本信息
int CollectionDate[3];             //书本收藏日期
favoritesNode *next;

favoritesNode();                   //无参数构造函数
favoritesNode(ElemType book int c[] favoritesNode *link = NULL);   //有参数构造函数
};

//无参构造
template
favoritesNode::favoritesNode()
{
next = NULL;
}

//有参数构造
template
favoritesNode::favoritesNode(ElemType book int c[] favoritesNode *link)
{
bookData = book;
for (int i = 0; i < 3; i++)
CollectionDate[i] = c[i];
next = link;
}

//单链表结点
template
struct ShoppingCartNode
{
//数据元素
ElemType Bookifor; //图书基本信息
ShoppingCartNode *next; //指向下一个结点指针
//构造函数
ShoppingCartNode(); //无参
ShoppingCartNode(ElemType bookifor ShoppingCartNode *link = NULL); //有参构造

};

template
ShoppingCartNode::ShoppingCartNode()
{
next = NULL;
}

//有参构造函数
template
ShoppingCartNode::ShoppingCartNode(ElemType bookifor ShoppingCartNode *link)
{
Bookifor = bookifor;
next = link;
}



template
class favorites
{
private:
favoritesNode *head;   //头节点
int length;                      //链表长度
public:
favorites(); //构造函数
virtual ~favorites(); //析构函数
void Clear();                   //清空收藏夹
void Display(favoritesNode *&j);                //显示某一图书的所有信息
favoritesNode *Find(const long long k); //输入图书号查找图书,并输出图书相关信息
void Display_bydate();            //按放入收藏夹的日期显示
void Display_byprice1();           //按价格显示所有图书(由小到大)
void Display_byprice2();           //按价格显示所有图书(由大到小)
void Display_all();
Status Delete(long long number);        //移除收藏夹
void PutFavo(ElemType j); //添加入收藏夹
void PutFile(); //输出到文件中
ElemType Puttheshoppingcart(long long number);//加入购物车
};

//构造函数
template
favorites::favorites

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      882688  2019-04-26 10:10  数据结构课程设计---收藏夹和购物车系统的实现\收藏夹和购物车系统的实现.doc
     目录           0  2019-04-26 10:11  数据结构课程设计---收藏夹和购物车系统的实现\源代码\
     文件        3051  2018-01-06 17:03  数据结构课程设计---收藏夹和购物车系统的实现\源代码\BookDatabase.txt
     文件          79  2018-01-09 18:28  数据结构课程设计---收藏夹和购物车系统的实现\源代码\Favorites.txt
     文件         212  2018-01-09 18:28  数据结构课程设计---收藏夹和购物车系统的实现\源代码\ShoppingCart.txt
     文件          21  2018-01-09 19:13  数据结构课程设计---收藏夹和购物车系统的实现\源代码\使用方法.txt
     文件       44522  2018-01-09 19:09  数据结构课程设计---收藏夹和购物车系统的实现\源代码\第七组.cpp
     目录           0  2019-04-26 10:11  数据结构课程设计---收藏夹和购物车系统的实现\

评论

共有 条评论