数据结构课程设计仓库管理系统源程序.docx

上传人:b****5 文档编号:3172164 上传时间:2022-11-18 格式:DOCX 页数:15 大小:17.39KB
下载 相关 举报
数据结构课程设计仓库管理系统源程序.docx_第1页
第1页 / 共15页
数据结构课程设计仓库管理系统源程序.docx_第2页
第2页 / 共15页
数据结构课程设计仓库管理系统源程序.docx_第3页
第3页 / 共15页
数据结构课程设计仓库管理系统源程序.docx_第4页
第4页 / 共15页
数据结构课程设计仓库管理系统源程序.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

数据结构课程设计仓库管理系统源程序.docx

《数据结构课程设计仓库管理系统源程序.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计仓库管理系统源程序.docx(15页珍藏版)》请在冰豆网上搜索。

数据结构课程设计仓库管理系统源程序.docx

数据结构课程设计仓库管理系统源程序

#include

usingnamespacestd;

typedefstruct{

charno[10];

charname[30];

intcount;

}DataType;

structNode{

DataTypedata;

Node*next;

};

classLink{

public:

Link();//构造函数,建立单链表

intInsert();//插入节点,即添加货物

Node*Search();//查找某个节点

voidDelete();//删除节点或更改节点的数据

voidshow();//输出节点信息

charYn();//输入(y/n)函数

char*No();//输入货物编号函数

voidFprintf();//将单链表数据写到文件中

voidFscanf();//读取文件中的数据

private:

Node*first,*real,*p,*q;

};

intmain()

{

intt=1,flag=1,f=1;

charn;

Node*p;

LinkKu;

while(t)

{

printf("\n\n\n\n\n");

printf("\n\t\t\t**********************************");

printf("\n\t\t\t* XXX仓库管理系统     *");

printf("\n\t\t\t*1---存储货物*");

printf("\n\t\t\t*2---查询货物信息*");

printf("\n\t\t\t*3---取出货物*");

printf("\n\t\t\t*4---显示仓库内所有货物信息*");

printf("\n\t\t\t*0---退出仓库管理系统*");

printf("\n\t\t\t**********************************");

printf("\n\t\t\t请选择菜单号(0--4):

");

f=1;

while(f==1)

{

cin>>n;

if(n<'0'||n>'4')

{

printf("输入有误,请重新输入(0--4):

");

f=1;

}

else

f=0;

}

printf("\n\n");

switch(n)

{

case'1':

{

printf("**********************************\n");

printf("*存储货物*\n");

printf("**********************************\n");

//printf("货物编号货物名称货物数量\n");

//printf("**********************************\n");

inta=1;

while(a==1)

{

a=Ku.Insert();

Ku.Fprintf();//将单链表里的数据写入文件。

}

break;

}

case'2':

{

printf("***********************************\n");

printf("*查询货物信息*\n");

printf("***********************************\n");

flag=1;

charyn;

while(flag==1)

{

p=Ku.Search();

if(p)

{

printf("\n货物编号货物名称货物数量\n");

printf("---------------------------\n");

printf("%5s%9s%8d\n",p->data.no,p->data.name,p->data.count);

printf("---------------------------\n");

}

else

printf("仓库中没有该货物!

\n");

printf("是否继续查询?

(y/n):

");

yn=Ku.Yn();

if(yn=='y'||yn=='Y')

flag=1;

if(yn=='n'||yn=='N')

flag=0;

}

break;

}

case'3':

{

printf("***********************************\n");

printf("*取出货物*\n");

printf("***********************************\n");

flag=1;

charyn;

while(flag==1)

{

Ku.Delete();

printf("是否继续取货?

(y/n):

");

yn=Ku.Yn();//调用输入y/n函数

if(yn=='y'||yn=='Y')

flag=1;

if(yn=='n'||yn=='N')

flag=0;

}

break;

}

case'4':

{

Ku.show();

break;

}

case'0':

{

charyn;

printf("确定退出仓库管理系统吗?

(y/n):

");

yn=Ku.Yn();//调用输入y/n函数

if(yn=='y'||yn=='Y')

{

printf("谢谢使用...\n");

t=0;

}

if(yn=='n'||yn=='N')

{

t=1;

}

break;

}

}

}

return0;

}

Link:

:

Link()

{

first=newNode;

first->next=NULL;

real=first;

FILE*fp=NULL;

fp=fopen("d:

\\file01.txt","a");

fclose(fp);

//Fprintf();

Fscanf();

}

intLink:

:

Insert()

{

charyn;

charno[10],name[30];

intcount,t;

printf("\n货物编号货物名称(30)货物数量(5)\n");

printf("-----------------------------------------------\n");

printf("\n请输入货物编号(10个字符以内):

\n");

strcpy(no,No());

printf("\n输入货物名称(30个字符以内):

\n");

cin>>name;

t=1;

while(t)

{

printf("输入货物数量(整数):

");

cin>>count;

if(count<=0)

{

t=1;

printf("货物数量必须大于0,请重新");

}

else

t=0;

}

p=first;real=first;

p=p->next;

while(p)

{

if(strcmp(p->data.no,no)==0&&strcmp(p->data.name,name)==0)

{

//printf("仓库中已有该货物%d件\n",p->data.count);

p->data.count=p->data.count+count;

printf("添加成功!

仓库中现有该货物%d件\n是否继续存货?

(y/n):

",p->data.count);

yn=Yn();

if(yn=='y'||yn=='Y')return1;

if(yn=='n'||yn=='N')return0;

}

if(strcmp(p->data.no,no)==0&&strcmp(p->data.name,name)!

=0)

{

printf("该货物的名称输入有误,应为%s\n请重新输入(y)或取消存货(n):

",p->data.name);

yn=Yn();

if(yn=='y'||yn=='Y')return1;

if(yn=='n'||yn=='N')return0;

}

if(strcmp(p->data.no,no)!

=0&&strcmp(p->data.name,name)==0)

{

printf("该货物的编号输入有误,应为%s\n请重新输入(y)或取消存货(n):

",p->data.no);

yn=Yn();

if(yn=='y'||yn=='Y')return1;

if(yn=='n'||yn=='N')return0;

}

real=p;

p=p->next;

}

if(p==NULL)

{

Node*s=newNode;

strcpy(s->data.no,no);

strcpy(s->data.name,name);

s->data.count=count;

s->next=NULL;

real->next=s;

real=s;

printf("添加成功!

仓库中现有该货物%d件\n是否继续存货?

(y/n):

",real->data.count);

yn=Yn();

if(yn=='y'||yn=='Y')return1;

if(yn=='n'||yn=='N')return0;

}

return0;

}

Node*Link:

:

Search()

{

charab;

charno[10],name[30];

intf;

p=first;

printf("==================\n");

printf("a.按货物编号查询\n");

printf("b.按货物名称查询\n");

printf("==================\n");

printf("请选择(a/b):

");

f=1;

while(f==1)

{

cin>>ab;

if(ab=='a'||ab=='A'||ab=='b'||ab=='B')

{

f=0;

if(ab=='a'||ab=='A')

{

printf

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1