⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1.txt

📁 超市管理系统
💻 TXT
字号:
#include <iostream> 
#include <string> 
#include <iomanip> 
#include <stdio.h> 


using namespace std; 

struct Sale 
{ 
	string m_code; 
	string m_name; 
	float m_price; 
	string m_place;
	string time; 
	int saled;
	struct Sale* next; 
}; 

typedef struct Sale Node; 
typedef Node* Link;


Link Create(Link Head) 
{ 
	Head=(Link)new Node; 
	Head->m_code=""; 
	Head->m_name=""; 
	Head->m_price=0.0; 
	Head->m_place=""; 
	Head->saled=0;
	Head->time="";
	Head->next=NULL; 
	Link ptr; 
	ptr=Head; 
	Link DNode; 
	char GoOn; 
	do 
	{ 
		cout<<"商品信息录入! "<<endl; 
		string code,name; 
		float price; 
		string place; 
		cout<<"输入代码:"<<endl; 
		cin>>code; 
		cout<<"输入名称:"<<endl; 
		cin>>name; 
		cout<<"输入价格:"<<endl; 
		cin>>price; 
		while(cin.fail()) 
		{ 
			cout<<"请输入正确的格式:"<<endl; 
			cin.clear(); 
			fflush(stdin); 
			cin>>price; 
		} 
		cout<<"输入生产单位:"<<endl; 
		cin>>place; 
		DNode=(Link)new Node; 
		DNode->m_code=code; 
		DNode->m_name=name; 
		DNode->m_price=price; 
		DNode->m_place=place;
		DNode->next=NULL;
		ptr->next=DNode; 
		ptr=DNode; 
		cout<<"商品信息录入成功! 是否继续录入?(Y/N) "; 
		cin>>GoOn; 
	}while(GoOn=='Y'||GoOn=='y'); 
	return Head; 
} 
 
void Release(Link Head) 
{ 
	Link ptr; 
	while(Head!=NULL) 
	{ 
		ptr=Head; 
		Head=Head->next; 
		delete ptr; 
	} 
} 

Link Search(Link Head,string& code) 
{ 
	Link ptr; 
	ptr=Head; 
	while(ptr!=NULL) 
	{ 
		if(ptr->m_code==code) 
			return ptr; 
		else 
			ptr=ptr->next; 

	} 
	cout<<"无此商品!"<<endl; 
	return ptr; 
} 


void Display_One(Link Head,string& code,unsigned place) 
{ 
	Link ptr; 
	ptr=Search(Head,code);//,不要头节点,只输出数据节点。 
	cout<<"时间=======货品代码=======货品名称======货品价格======货品已卖数量======总价(元)"<<endl; 
	cout<<setw(15)<<left<<ptr->time
		<<setw(15)<<left<<ptr->m_code  
		<<setw(15)<<left<<ptr->m_name 
		<<setw(15)<<left<<ptr->m_price 
		<<setw(15)<<left<<ptr->saled 
		<<setw(15)<<left<<ptr->saled*ptr->m_price<<endl; 
} 
void Display_Two(Link Head) 
{ 
	Link ptr; 
	ptr=Head->next; 
	cout<<"货品代码=======货品名称======货品价格======货品已卖单位======收到(元)===="<<endl; 
	while(ptr!=NULL) 
	{ 
		cout<<setw(15)<<left<<ptr->m_code 
			<<setw(15)<<left<<ptr->m_name 
			<<setw(15)<<left<<ptr->m_price 
			<<setw(15)<<left<<ptr->saled 
			<<setw(15)<<left<<ptr->saled*ptr->m_price<<endl;
		ptr=ptr->next; 
	}
}
 
float CheckOut(Link Head,string& code,int saled,string time) 
{ 
	Link ptr; 
	float sum(0); 
	ptr=Search(Head,code);
	ptr->saled=+saled;
	ptr->time=time;
	sum=(ptr->m_price*saled); 
	return sum; 
} 
 
void Total(Link Head) 
{ 
	Link ptr; 
	ptr=Head; 
	float sum(0); 
	char GoOn; 
	while(1) 
	{ 
		cout<<"要结束销售信息录入请按\'N\',其它任意键表示继续录入! "<<endl; 
		cin>>GoOn; 
		if(GoOn=='N'||GoOn=='n') 
			break; 
		else 
		{ 
			string time;
			string code; 
			unsigned int saled; 
			cout<<"输入销售的时间:"<<endl; 
			cin>>time;
			cout<<"输入销售的商品代码:"<<endl; 
			cin>>code; 
			cout<<"输入销售的数量:"<<endl; 
			cin>>saled; 
			sum+=CheckOut(ptr,code,saled,time); 
			cout<<"卖出的商品为:"<<endl; 
			Display_One(ptr,code,saled); 
		} 
	} 
	cout<<"                                                    "<<endl; 
	cout<<"总价值 "<<sum<<"元!"<<endl;  
} 

int main() 
{ 
	Link Head=NULL;  
	int loop=1; 
	while(loop) 
	{ 
		cout<<"*********************************************************"<<endl; 
		cout<<"*                     菜单选项                          *"<<endl; 
		cout<<"*                                                       *"<<endl; 
		cout<<"* 1.输入信息 2.销售记录 3.销售情况 4.查询商品0.退出系统 *"<<endl; 
		cout<<"*********************************************************"<<endl; 
		int menu; 
		cin>>menu; 
		if(cin.fail()) 
		{ 
			cout<<"请按菜单对应的数字选择合适的操作,谢谢合作!"<<endl; 
			cin.clear(); 
			fflush(stdin); 
			cin>>menu; 
		} 
		switch(menu) 
		{ 
		case 0: 
			cout<<"已退出系统!"<<endl; 
			loop=0; 
			break; 
		case 1: 
			Head=Create(Head); 
			break; 
		case 2: 
			Total(Head); 
			break; 
		case 3: 
			Display_Two(Head); 
			break; 
		case 4:
			cout<<"请输入你要查找的条形码---:"<<endl;
			string num4;
			cin>>num4;
			cout<<"货品代码=======货品名称======货品价格======货品生产单位===="<<endl; 
			cout<<setw(15)<<left<<Search(Head,num4)->m_code 
				<<setw(15)<<left<<Search(Head,num4)->m_name 
				<<setw(15)<<left<<Search(Head,num4)->m_price 
				<<setw(15)<<left<<Search(Head,num4)->m_place<<endl;
			break;
		} 
	} 
 	Release(Head); 
	return 0; 
}
//打印链表。 
/*void Display(Link Head) 
{ 
Link ptr; 
ptr=Head->next;//,不要头节点,只输出数据节点。 
cout<<"==========================================================="<<endl; 
cout<<"===============所有商品信息清单============================"<<endl; 
cout<<"==========================================================="<<endl; 
cout<<"货品代码=======货品名称======货品价格======货品生产单位===="<<endl; 
while(ptr!=NULL) 
{ 
cout<<setw(15)<<left<<ptr->m_code 
<<setw(15)<<left<<ptr->m_name 
<<setw(15)<<left<<ptr->m_price 
<<setw(15)<<left<<ptr->m_place<<endl; 
ptr=ptr->next; 
}*/ 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -