仓库管理系统源代码.docx
- 文档编号:27382915
- 上传时间:2023-06-30
- 格式:DOCX
- 页数:17
- 大小:16.07KB
仓库管理系统源代码.docx
《仓库管理系统源代码.docx》由会员分享,可在线阅读,更多相关《仓库管理系统源代码.docx(17页珍藏版)》请在冰豆网上搜索。
仓库管理系统源代码
仓库管理系统源代码
#include
#include
#include
#include
#include
structcangku
{
intnum;
charname[20];
charintrodution[50];
floatsquare;
};
typedefstructcangkuCangku;
intInput(Cangkut[]);
voidList(Cangkut[],intn);voidSearchOnName(Cangkut[],intn);intDeleteRecord(Cangkut[],intn);intAlterRecord(Cangkut[],intn);intAddRecord(Cangkut[],intn);voidSortOnName(Cangkut[],intn);voidSortOnSquare(Cangkut[],intn);voidSaveRecord(Cangkut[],intn);intLoadRecord(Cangkut[]);intLoadRecord1(Cangkut[]);voidSave(Cangkut[],intn);voidLoad(Cangkut[],intn);voidLoad1(Cangkut[]);
intMenu_select();
voidmain()
{
Cangkuck[50];
inti,l,length,w=1;
intq[4]={5,2,1,0};
system("cls");
printf("请输入第1个密码:
\n");
for(i=0;i<4;i++)
{
scanf("%d",&l);
system("cls");
if(l==q[i])
printf("正确,继续输入第%d个密码:
.\n",i+2);
else
{
w=0;
printf("输入错误!
\n");
break;
}
}
while(w)
{
switch(Menu_select())
{
case1:
length=Input(ck);
SaveRecord(ck,length);
break;
case2:
length=LoadRecord(ck);
SearchOnName(ck,length);
break;
case3:
length=LoadRecord(ck);
length=DeleteRecord(ck,length);
SaveRecord(ck,length);
break;
case4:
length=LoadRecord(ck);
length=AlterRecord(ck,length);
SaveRecord(ck,length);
break;
case5:
length=LoadRecord(ck);
length=AddRecord(ck,length);
SaveRecord(ck,length);
break;
case6:
length=LoadRecord(ck);
system("cls");
List(ck,length);
break;
case7:
length=LoadRecord(ck);
system("cls");
SortOnName(ck,length);
SaveRecord(ck,length);
break;
case8:
length=LoadRecord(ck);
system("cls");
SortOnSquare(ck,length);
SaveRecord(ck,length);
break;
case9:
length=LoadRecord(ck);
system("cls");
Save(ck,length);
break;
case0:
length=LoadRecord1(ck);
Load1(ck);
system("cls");
Load(ck,length);
break;
case10:
exit(0);
}
}
}
intMenu_select()
{
intc;
printf("按任意键进入仓库管理菜单\n");
getchar();
system("cls");
system("colorF0");
printf("******************************仓库管理
*******************************\n");
printf("*1.录入仓库初始记录*\n");
printf("*2.按仓库名称查找记录*\n");
printf("*3.删除仓库记录*\n");
printf("*4.修改仓库记录*\n");
printf("*5.增加仓库信息*\n");
printf("*6.显示全部记录*\n");
printf("*7.按仓库名称排序
*\n");
printf("*8.按仓库面积排序
*\n");
printf("*9.备份
*\n");
printf("*0.恢复
*\n");
printf("*10.退出
*\n");
printf("
*********************************************************************\n");
do
{
printf("\n输入您想要进行的操作选项键(0-10):
");
if(scanf("%d",&c)!
=1)
{
while(getchar()!
='\n')
continue;
}
}
while(c<0||c>10);
returnc;
}
intInput(Cangkut[])
{
inti,n;
system("cls");
printf("\n请输入要输入的仓库数目:
\n");
scanf("%d",&n);
printf("开始输入仓库信息:
\n");
for(i=0;i { system("cls"); printf("\n第%d个仓库的编号: ",i+1); scanf("%d",&t[i].num); printf("第%d个仓库的名称: ",i+1); scanf("%s",t[i].name); printf("第%d个仓库的面积: ",i+1); scanf("%f",&t[i].square); printf("第%d个仓库的说明: ",i+1); scanf("%s",t[i].introdution);} return(n); } voidList(Cangkut[],intn) { inti; printf(" *********************************************************************\n"); printf("**编号名称面积说明\n"); printf(" ---------------------------------------------------------------------\n"); for(i=0;i { printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].introdution); } printf(" *********************************************************************\n"); printf("\n"); getchar(); } voidSearchOnName(Cangkut[],intn){ chars[20]; inti,flag=0; system("cls"); printf("请输入要查找的仓库名称: \n"); scanf("%s",s); for(i=0;i { if(strcmp(s,t[i].name)==0) { flag=1; system("cls"); printf("\n\n要查找的仓库信息如下: \n"); printf("\n"); printf(" *********************************************************************\n"); printf("**编号名称面积说明 \n"); printf(" ---------------------------------------------------------------------\n"); { printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].introdution); } printf(" *********************************************************************\n"); printf("\n"); } } if(flag==0) printf("要查找的仓库不存在! ! \n"); getchar(); } intDeleteRecord(Cangkut[],intn) { chars[20]; charch; inti,j,flag=0; system("cls"); printf("请输入要删除的仓库名称\n"); scanf("%s",s); for(i=0;i { if(strcmp(s,t[i].name)==0) { flag=1; system("cls"); printf("\n\n要删除的仓库信息如下: \n"); printf("\n"); printf(" *********************************************************************\n"); printf("**编号名称面积说明 \n"); printf(" ---------------------------------------------------------------------\n"); { printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].introdution); } printf(" *********************************************************************\n"); printf("\n"); printf("确定删除仓库信息吗? (Y/N)\n"); ch=getchar(); ch=getchar(); if(ch=='Y'||ch=='y') { for(j=i;j t[j]=t[j+1]; n--; i--; printf("删除成功.\n"); } } } if(flag==0) printf("要删除的仓库不存在! ! \n"); getchar(); returnn; } intAlterRecord(Cangkut[],intn){ inti,flag=0; chars[20],ch; system("cls"); printf("请输入要修改的仓库名称\n"); scanf("%s",s); for(i=0;i { if(strcmp(s,t[i].name)==0) { flag=1; system("cls"); printf("\n\n要修改的仓库信息如下: \n"); printf("\n"); printf("*********************************************************************\n"); printf("**编号名称面积 说明\n"); printf("---------------------------------------------------------------------\n"); { printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].introdution); } printf(" *********************************************************************\n"); printf("\n"); printf("确定修改仓库信息吗,(Y/N)\n"); ch=getchar(); ch=getchar(); if(ch=='y'||ch=='Y') { system("cls"); printf("请输入修改后的信息: \n"); printf("请输入仓库新的名称: "); scanf("%s",t[i].name); printf("请输入%s仓库新的编号: ",t[i].name); scanf("%d",&t[i].num); printf("请输入%s仓库新的面积: ",t[i].name); scanf("%f",&t[i].square); printf("请输入%s仓库新的说明: ",t[i].name); scanf("%s",t[i].introdution); } } } if(flag==0) printf("要修改的仓库不存在~~\n"); getchar(); returnn; } intAddRecord(Cangkut[],intn){ inti,m; system("cls"); printf("\n请输入再增加的记录数: \n"); scanf("%d",&m); printf("开始追加记录\n"); for(i=n;i {system("cls"); printf("\n第%d个仓库的编号: ",i+1); scanf("%d",&t[i].num); printf("第%d个仓库的名称: ",i+1); scanf("%s",t[i].name); printf("第%d个仓库的面积: ",i+1); scanf("%f",&t[i].square); printf("第%d个仓库的说明: ",i+1); scanf("%s",t[i].introdution); } return(n+m); } voidSortOnName(Cangkut[],intn) { inti,j; structcangkutemp; for(j=1;j for(i=0;i if((strcmp(t[i].name,t[i+1].name))>0) { temp=t[i]; t[i]=t[i+1]; t[i+1]=temp; } printf("排序成功! ! ! \n"); printf("排序后仓库信息列表如下: \n"); List(t,n); } voidSortOnSquare(Cangkut[],intn) { inti,j; structcangkutemp; for(j=1;j for(i=0;i if(t[i].square { temp=t[i]; t[i]=t[i+1]; t[i+1]=temp; } printf("排序成功! ! ! \n"); printf("排序后仓库信息列表如下: \n"); List(t,n); } voidSaveRecord(Cangkut[],intn){ inti; FILE*fp; if((fp=fopen("record.txt","w"))==NULL) { printf("不能打开文件! \n"); exit (1); } for(i=0;i { fwrite(&t[i],sizeof(structcangku),1,fp); } fclose(fp); } intLoadRecord(Cangkut[]) { intn=0; FILE*fp; if((fp=fopen("record.txt","a+"))==NULL) { printf("不能打开文件! \n"); exit (1); } while(fread(&t[n],sizeof(structcangku),1,fp))n++; fclose(fp); printf("从文件中成功读出记录! ! ! \n"); returnn; } intLoadRecord1(Cangkut[]){ intn=0; FILE*fp; if((fp=fopen("bkrecord.txt","a+"))==NULL) { printf("不能打开文件! \n"); exit (1); } while(fread(&t[n],sizeof(structcangku),1,fp))n++; fclose(fp); printf("从文件中成功读出记录! ! ! \n"); returnn; } voidSave(Cangkut[],intn){ inti; FILE*fp; if((fp=fopen("bkrecord.txt","w"))==NULL) { printf("不能打开文件! \n"); exit (1); } for(i=0;i { fwrite(&t[i],sizeof(structcangku),1,fp); } fclose(fp); printf("备份成功.\n"); getchar(); } voidLoad1(Cangkut[]){ intn=0; FILE*fp; if((fp=fopen("bkrecord.txt","a+"))==NULL) { printf("不能打开文件! \n"); exit (1); } while (fread(&t[n],sizeof(structcangku),1,fp))n++; fclose(fp); getchar(); } voidLoad(Cangkut[],intn){ inti; FILE*fp; if((fp=fopen("record.txt","w"))==NULL) { printf("不能打开文件! \n"); exit (1); } for(i=0;i { fwrite(&t[i],sizeof(structcangku),1,fp); } fclose(fp); printf("恢复成功.\n"); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 管理 系统 源代码
![提示](https://static.bdocx.com/images/bang_tan.gif)