仓库库存管理系统源程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
仓库库存管理系统源程序
#include
#include
#include
#include
int shoudsave=0;
struct item//物品信息定义
{
char code[10];//物品编码
char name[20];//物品名称
int num; //商品数量
int level;//物品等级
}item;
typedef struct node
{
struct item data;
struct node * next;
}Node,*Link;//定义为链表
void menu()//页面显示函数
{
system("cls");//清屏函数
printf("***********************************《物品库存管理》*****************************\n");
printf(" \n");
printf("\n <1> 物品入库管理\n\t\n <2> 物品出库管理\n");
printf("\n <3> 浏览库内物品信息\n\t\n <4> 修改物品信息\n");
printf("\n <5> 保存物品信息\n\t\n <0> 退出库存管理\n");
printf(" \n");
cout<<"************************************************** ******************************"< printf("\n 请选择操作:"); } void printstart() { printf("------------------------------------------\n"); } void Wrong()//错误处理函数 { printf("输入错误!\n"); getchar(); getchar(); menu(); return; } void Nofind() { printf("没有找到该物品!\n"); } void printc()//本函数用于输出中文 { printf(" 物品编码物品名称物品数量物品等级\n"); } void printe(Node *p)//输出物品信息函数 { cout< "< "< } Node *Locate(Link l,char findmess[],char nameorcode[]) //用于定位连接中,符合要求的结点,并返回该指针 { Node *r; if(strcmp(nameorcode,"code")==0)// { r=l->next; while(r!=NULL) { if(strcmp(r->data.code,findmess)==0) return r; r=r->next; } } else if(strcmp(nameorcode,"name")==0)//按名称查询 { r=l->next; while(r!=NULL) { if(strcmp(r->,findmess)==0) return r; r=r->next; } } return 0; } void Add(Link l)//增加物品函数 { Node *p,*r,*s; char code[10]; r=l; s=l->next; while(r->next!=NULL) r=r->next; while(l) { system("cls");//清屏函数 cout<<"请输入商品编码(输入'0'返回上一级菜单):"< scanf("%s",code); if(strcmp(code,"0")==0) break; while(s) { if(strcmp(s->data.code,code)==0) { printf("物品编码为'%s'的物品已经存在,如果要修改请选择'4 修改'!\n",code); printstart(); printc(); printe(s); printstart(); printf("\n"); return; } s=s->next; } p=(Node * )malloc(sizeof(Node)); strcpy(p->data.code,code); printf("请输入物品名称:"); scanf("%s",p->); getchar();