您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 数据结构课程设计报告(有代码 C语言)-仓库管理系统
1第一章系统目标(三号楷体加粗)仓库管理应用程序系统可以实现信息多次追加入录、信息显示、删除信息、修改信息、查询信息、价格升序等基本功能,这些功能模块都用函数的形式来实现。学生信息保存在文件中,需要时可以随时从文件中读取出来。方便用户随时可查询。进行仓库管理。第二章系统分析(三号楷体加粗)正文(四号楷体)明确用户的需求,如操作界面需求,系统功能需求,数据的具体流程等。开始运行时界面如下:你可以根据所对应的信息提示进行操作便可对其进行数据的记录与查询。第三章系统设计2输出操作界面选择1选择2初始化清空记录输入数据提示按任意键,便可返回界面开始选择3选择4选择5选择6选择7提示“输入错误”按任意键可以继续数据插入数据删除数据更新数据查询单价升序3第四章系统实现正文(四号楷体)给出具体的实现环境(如用什么语言?在什么操作系统?)用C语言编程,用cokeblock编译器,在windowsxp操作系统下编译成功。给出主函数和每个算法的实现代码。#includestdio.h#includestdlib.h#includeconio.h#includectype.h#includestring.h#defineSIZE100typedefstruct{charname[10];charfam[10];intpay;intnum;}Store;输入W/w输入R/r读取文件保存文件其余输入选择0结束4typedefstructnode{Storeelem;structnode*next;}In;In*head=NULL;voidappendInfo();voidList();voidmenu(void);In*Init();voidStart();voidInsert();voidDel();voidrenew();voidWsave();voidRead();voidSortUp();voidPreFile();intmain(){charselect;PreFile();menu();while((select=toupper(getch()))!='0'){system(cls);switch(select){case'1':{Start();system(pause);menu();break;}case'2':{5appendInfo();system(pause);menu();break;}case'3':{Insert();system(pause);menu();break;}case'4':{Del();system(pause);menu();break;}case'5':{renew();system(pause);menu();break;}case'6':{List();system(pause);menu();break;}case'7':{SortUp();system(pause);menu();break;}case'W':{Wsave();system(pause);menu();break;}case'R':{Read();6system(pause);menu();break;}default:printf(Inputerror!\n);system(pause);menu();break;}}return0;}In*Init(){In*L;L=(In*)malloc(sizeof(In));L-next=NULL;returnL;}voidappendInfo(){inti,j;In*p,*s;A1:printf(请输入要存放的记录数:);scanf(%d,&j);if(j=0){printf(Inputerror!\n);gotoA1;}if(head==NULL){p=Init();head=p;}7else{p=head-next;while(p-next!=NULL)p=p-next;}for(i=0;ij;i++){s=Init();printf(名称品牌单价数量\n);scanf(%s,&s-elem.name);scanf(%s,&s-elem.fam);scanf(%d,&s-elem.pay);scanf(%d,&s-elem.num);p-next=s;p=s;}}voidList(){In*p;if(head==NULL){printf(Noneofinformationaboutproducts.\n);return;}elsep=head-next;printf(名称品牌单价数量\n);while(p!=NULL){printf(%s\t%s\t%d\t%d\n,p-elem.name,p-elem.fam,8p-elem.pay,p-elem.num);p=p-next;}}voidmenu(){system(cls);printf(|-------------------------------------------|\n);printf(|---------------家电仓库管理----------------|\n);printf(|请输入选项编号|\n);printf(|-------------------------------------------|\n);printf(|1--数据初始化|\n);printf(|2--创建数据表|\n);printf(|3--数据插入|\n);printf(|4--数据删除|\n);printf(|5--数据更新|\n);printf(|6--数据查询|\n);printf(|7--单价升序|\n);printf(|w--数据保存|\n);printf(|r--数据读出9|\n);printf(|0--系统退出(exit)|\n);printf(|-------------------------------------------|\n);printf(请输入你的选择:);}voidStart(){charcom;printf(你想清空所有资料吗?(Y/N):);fflush(stdin);com=getchar();if(com=='Y'||com=='y'){printf(已经初始化了、、、\n);head=NULL;return;}elseprintf(资料仍在、、、\n);return;}voidInsert(){In*pi,*p;charstr[10];printf(请问要在哪个学生后面插入(输入姓名):);fflush(stdin);gets(str);pi=Init();printf(名称品牌单价数量\n);scanf(%s,&pi-elem.name);scanf(%s,&pi-elem.fam);scanf(%d,&pi-elem.pay);10scanf(%d,&pi-elem.num);if(head==NULL){printf(前面没有数据,默认接在表头。\n);p=Init();head=p;p-next=pi;}else{p=head-next;while((strcmp(p-elem.name,str)!=0)&&p-next!=NULL)p=p-next;if(p-next!=NULL){pi-next=p-next;p-next=pi;}elsep-next=pi;}}voidDel(){In*pi,*p,*s;charstr[10];if(head==NULL){printf(没有商品资料。\n);return;}printf(请输入要删除产品的名称:);fflush(stdin);gets(str);p=head-next;11while((strcmp(p-elem.name,str)!=0)&&p-next!=NULL){pi=p;p=p-next;}if(strcmp(p-elem.name,str)==0){printf(所删除的记录为:\n);printf(%s\t%s\t%d\t%d\n,p-elem.name,p-elem.fam,p-elem.pay,p-elem.num);if(p==head-next){s=Init();head=s;s-next=p-next;}elsepi-next=p-next;free(p);}elseprintf(找不到相应的商品资料。\n);}voidrenew(){In*pi,*p,*s;charstr[10];if(head==NULL){printf(没有商品资料。\n);return;}List();printf(请输入要更新产品的名称:);fflush(stdin);gets(str);12p=head-next;while((strcmp(p-elem.name,str)!=0)&&p-next!=NULL){pi=p;p=p-next;}if(strcmp(p-elem.name,str)==0){printf(所要更新的记录为:\n);printf(%s\t%s\t%d\t%d\n,p-elem.name,p-elem.fam,p-elem.pay,p-elem.num);printf(品牌单价数量\n);scanf(%s,&p-elem.fam);scanf(%d,&p-elem.pay);scanf(%d,&p-elem.num);printf(更新后的记录为:\n);printf(%s\t%s\t%d\t%d\n,p-elem.name,p-elem.fam,p-elem.pay,p-elem.num);}elseprintf(找不到相应的商品资料。\n);}voidWsave(){FILE*fp;In*p;if(head==NULL){printf(你还未有资料。);return;}if((fp=fopen(store.dat,wb))==NULL)printf(Cannotopenfile!\n);13else{for(p=head-next;p!=NULL;p=p-next)if(fwrite(p,sizeof(In),1,fp)!=1)printf(Filewriteerror!\n);}printf(\t\t\t保存成功。\n\n);fclose(fp);}voidRead(){In*p;FILE*fp;if(head==NULL){printf(你还未有资料。);return;}if((fp=fopen(store.dat,rb))==NULL){printf(CannotOpen.);return;}for(p=head-next;p!=NULL;p=p-next){p=Init();fread(p,sizeof(In),1,fp);printf(%s\t%s\t%d\t%d\n,p-elem.name,p-elem.fam,p-elem.pay,p-elem.num);}printf(\n\t\t\t读取成功\n);fclose(fp);}voidSortUp(){In*p1,*p2,*p3;14p3=(In*)malloc(sizeof(In));if(head==NULL){printf(没有记录,无法排序。);return;}for(p1=head-next;p1-next!=NULL;p1=p1-next)for(p2=p1-next;p2!=NULL;p2=p2-next)if(p1-elem.payp2-elem.pay){p3-elem=p1-elem;p1-elem=p2-elem;p2-elem=p3-elem;}printf(\n已经排序好了。\n);List();}voidPreFile(){intFlag=0;In*he,*p,*q;FILE*fp;if((fp=fo
本文标题:数据结构课程设计报告(有代码 C语言)-仓库管理系统
链接地址:https://www.777doc.com/doc-1248234 .html