第三方物流管理信息系统C++
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include
#include
#include
#include
#include
//#include
#include
using namespace std;
struct ProductNode
{
string NO;//型号
string Name;//名称
string Brand;//品牌
int Price;//卖出价
int Quantity;//数量
ProductNode* next;
};
//产品库存链表
class ProductList
{
ProductNode* first;//头结点
void InitInsert(ProductNode* s); //私有成员函数,初始化时从文件读入数据插入至链表public:
ProductList(){first=new ProductNode;first->next=NULL;}//建立只有头结点的空链表
void ReadFile(); //营业开始,读入文件
void WriteFile(); //营业结束,写入文件
void Insert(); //进货,插入结点
void FindByNO(); //根据型号查找(结果不止一个,所以用void)
void FindByName(); //根据名称查找(同上)
void FindByBrand(); //根据品牌查找(同上)
bool Delete(); //提货,删除结点
bool Modify(); //修改信息
void PrintList()const;//遍历单链表,按序号依次输出各元素
void DataResume(); //**数据恢复**
~ProductList(); //析构函数
};
void menu()
{
cout<<" ----------------------交运0902---------------------------------------\n"
<<" ***************************第三方物流管理系统***************************\n" <<" ----------------------------------------------------------------------\n"
<<" 从下面的功能中选择一个!\n"
<<" ------------------------ -------------------- ------------------\n"
<<" *******显示与查询******* *******增删改******* *******其他*******\n"
<<" ------------------------ -------------------- ------------------\n"
<<" 1.显示全部产品信息5.进货(插入结点) 8.存盘\n"
<<" 2.按型号查询6.提货(删除结点) 9.营业结束(存盘退出)\n"
<<" 3.按名称查询7.修改产品信息a.数据恢复\n"
<<" 4.按品牌查询0.退出(不存盘)\n"
<<" ----------------------------------------------------------------------\n\n";
}
////主程序
int main()
{
ProductList pl;
cout<<"\t\t欢迎使用第三方物流管理系统\n";
cout<<"\t1.开始营业\n\t2.退出\n请选择:";
string choice;
while(1)
{
cin>>choice;
if(choice[0]=='2')exit(0);
else if(choice[0]!='1')cout<<"此序号不存在,请重新输入!\n";
else
{
pl.ReadFile();//读入文件
while(1)
{
cout<<"请按回车继续...";
getchar();
getchar();
system("cls");//清屏
menu();//显示菜单
cout<<"请输入序号:";
cin>>choice;//选择
switch(choice[0])
{
case '1':pl.PrintList();break;//显示全部产品信息
case '2':pl.FindByNO();break;//按型号查询
case '3':pl.FindByName();break;//按名称查询
case '4':pl.FindByBrand();break;//按品牌查询
case '5':pl.Insert();break;//进货(插入结点)
case '6':pl.Delete();break;//提货(删除结点)
case '7':pl.Modify();break;//修改产品信息
case '8':pl.WriteFile();break;//存盘
case '9':{pl.WriteFile();cout<<"谢谢使用!\n";exit(0);}//营业结束(存盘退出) case 'a':{pl.DataResume();break;}//数据恢复
case '0':{cout<<"谢谢使用!\n";exit(0);} //退出(不存盘)