C语言课程设计仓库管理系统_第1页
C语言课程设计仓库管理系统_第2页
C语言课程设计仓库管理系统_第3页
免费预览已结束,剩余7页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C 语言课程设计 仓库管理系统#includestruct cangkuint num;char name20;char introdution50;float square;typedef struct cangku Cangku;int Input(Cangku t);void List(Cangku t,int n);void SearchOnName(Cangku t,int n);int DeleteRecord(Cangku t,int n);int AlterRecord(Cangku t,int n);int AddRecord(Cangku t,int n);void Sor

2、tOnName(Cangku t,int n);void SortOnSquare(Cangku t,int n);void SaveRecord(Cangku t,int n);int LoadRecord(Cangku t);int LoadRecord1(Cangku t);void Save(Cangku t,int n);void Load(Cangku t,int n);void Load1(Cangku t);int Menu_select();void main()Cangku ck50;int i,l,length,w=1;int q4=5,2,1,0;system(&quo

3、t;cls");printf(" 请输入第 1 个密码 :n");for (i=0;i<4;i+) scanf("%d",&l);system("cls");if(l=qi)printf("正确,继续输入第%d个密码:.n",i+2);elsew=0;printf (" 输入错误 !n");break;while(w)switch(Menu_select()case 1: length=Input(ck);SaveRecord(ck,length);break;case

4、2: length=LoadRecord(ck); SearchOnName(ck,length); break;case 3: length=LoadRecord(ck); length=DeleteRecord(ck,length); SaveRecord(ck,length);break;case 4: length=LoadRecord(ck); length=AlterRecord(ck,length); SaveRecord(ck,length);break;case 5: length=LoadRecord(ck); length=AddRecord(ck,length); Sa

5、veRecord(ck,length); break;case 6: length=LoadRecord(ck); system("cls");List(ck,length);break;case 7: length=LoadRecord(ck); system("cls"); SortOnName(ck,length); SaveRecord(ck,length); break;case 8: length=LoadRecord(ck); system("cls");SortOnSquare(ck,length);SaveRecor

6、d(ck,length); break;case 9: length=LoadRecord(ck);system("cls");Save(ck,length);break;case 0: length=LoadRecord1(ck);Load1(ck);system("cls");Load(ck,length); break;case 10: exit(0);int Menu_select()int c;printf(" 按任意键进入仓库管理菜单 n"); getchar();system("cls");syste

7、m("color F0");C/H*printf("*n");printf("*n");printf("*n");printf("*n");printf(" *n");printf(" *n");printf("*n");printf("*n");printf(" *n");printf("*n");printf("*n");printf("仓库管

8、理1. 录入 仓库 初始 记录2. 按仓库名称 查找记录3. 删 除 仓 库 记 录4. 修改 仓库 记录5. 增 加 仓 库 信 息6. 显 示 全 部 记 录7. 按仓库 名称排序8. 按仓库 面积排序9. 备 份0. 恢 复10. 退 出* n"); do printf("n 输入您想要进行的操作选项键 (0-10):");if(scanf("%d",&c)!=1)while(getchar()!='n') continue; while(c<0|c>10);return c;int Input(Can

9、gku t)int i,n;system("cls");printf("n 请输入要输入的仓库数目 :n"); scanf("%d",&n);printf(" 开始输入仓库信息 :n");for(i=0;i<n;i+)system("cls");printf("n第%d个仓库的编号:",i+1);scanf ("%d",&ti.num);printf("第%d个仓库的名称:",i+1);scanf ("%

10、s",);printf("第%d个仓库的面积:",i+1);scanf ("%f",&ti.square);printf("第%d个仓库的说明:",i+1);scanf ("%s",rodution);return (n);void List(Cangku t,int n)int i;printf("* n");printf("* 编 号名 称面积说明 n");printf(" n");for(i=0;i<

11、n;i+) printf("%17d%13s%20f%14sn",ti.num,,ti.square,rodution);printf("n");printf ("n");getchar();void SearchOnName(Cangku t,int n)char s20;int i,flag=0;system("cls");printf(" 请输入要查找的仓库名称 :n");scanf("%s",s);for(i=0;i<n;i+)if(s

12、trcmp(s,)=0)flag=1;system("cls");printf("nn 要查找的仓库信息如下 :n");printf("n");printf("*n");printf(" * 编 号 名 称 面 积 说明 n");printf(" n");printf("%17d%13s%20f%14sn",ti.num,,ti.square,rodution);printf("*n");prin

13、tf ("n");if(flag=0)printf(" 要查找的仓库不存在 !n");getchar();int DeleteRecord(Cangku t,int n)char s20;char ch;int i,j,flag=0;system("cls");printf(" 请输入要删除的仓库名称 n");scanf("%s",s);for(i=0;i<n;i+)if(strcmp(s,)=0)flag=1;system("cls");printf(&

14、quot;nn 要删除的仓库信息如下 :n");printf("n");printf("*n");printf(" * 编 号 名 称 面积 说明 n");printf(" n");printf("%17d%13s%20f%14sn",ti.num,,ti.square,rodution);printf("*n");printf ("n");printf(" 确定删除仓库信息吗 ?(Y/N)n");c

15、h=getchar();ch=getchar();if(ch='Y'|ch='y')for(j=i;j<n-1;j+)tj=tj+1;n-;i-;printf ("删除成功 .n");if(flag=0)printf(" 要删除的仓库不存在 !n");getchar();return n;int AlterRecord(Cangku t,int n)int i,flag=0;char s20,ch;system("cls");printf(" 请输入要修改的仓库名称 n");s

16、canf("%s",s);for(i=0;i<n;i+)if(strcmp(s,)=0)flag=1;system("cls");printf("nn 要修改的仓库信息如下 :n");printf("n");printf("*n");printf(" * 编号 名称 面积 说明 n");printf(" n"); printf("%17d%13s%20f%14sn",ti.num,,ti.square,

17、rodution);printf("*n");printf ("n");printf(" 确定修改仓库信息吗? (Y/N)n");ch=getchar();ch=getchar();if(ch='y'|ch='Y') system("cls");printf(" 请输入修改后的信息 :n");printf(" 请输入仓库新的名称 :");scanf("%s",); printf("请输入s

18、仓库新的编号:",); scanf("%d",&ti.num);printf("请输入%s仓库新的面积:",); scanf("%f",&ti.square);printf("请输入%s仓库新的说明:",); scanf("%s",rodution);if(flag=0)printf(" 要修改的仓库不存在! !n"); getchar();return n;int AddRecord(Cangk

19、u t,int n)int i,m;system("cls");printf("n 请输入再增加的记录数: n"); scanf("%d",&m);printf(" 开始追加记录 n");for(i=n;i<n+m;i+) system("cls");printf("n第%d个仓库的编号:",i+1);scanf("%d",&ti.num);printf("第%d个仓库的名称:",i+1);scanf("

20、%s",);printf("第%d个仓库的面积:",i+1);scanf("%f",&ti.square);printf("第%d个仓库的说明:",i+1);scanf("%s",rodution);return (n+m);void SortOnName(Cangku t,int n)int i,j;struct cangku temp ;for(j=1;j<n;j+)for(i=0;i<n-j;i+) if(strcmp(,ti+1.name

21、)>0) temp=ti;ti=ti+1;ti+1=temp;printf(" 排序成功 !n");printf(" 排序后仓库信息列表如下 :n");List(t,n);int i,j;struct cangku temp ;for(j=1;j<n;j+) for(i=0;i<n-j;i+) if(ti.square<ti+1.square) temp=ti; ti=ti+1; ti+1=temp;printf(" 排序成功 !n");printf(" 排序后仓库信息列表如下 :n");L

22、ist(t,n);void SaveRecord(Cangku t,int n)int i;FILE *fp;if(fp=fopen("record.txt","w")=NULL)printf(" 不能打开文件 !n"); exit(1);for(i=0;i<n;i+)fwrite(&ti,sizeof(struct cangku),1,fp);fclose(fp);int LoadRecord(Cangku t)int n=0;FILE *fp;if(fp=fopen("record.txt",&q

23、uot;a+")=NULL)printf(" 不能打开文件 !n");exit(1);while(fread(&tn,sizeof(struct cangku),1,fp) n+; fclose(fp);printf(" 从文件中成功读出记录 !n");return n;int LoadRecord1(Cangku t)int n=0;FILE *fp; if(fp=fopen("bkrecord.txt","a+")=NULL) printf(" 不能打开文件 !n"); exit(1);while(fread(&tn,sizeof(struct ca

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论