C语言仓库管理系统4.docx

上传人:b****9 文档编号:25124612 上传时间:2023-06-05 格式:DOCX 页数:18 大小:16.28KB
下载 相关 举报
C语言仓库管理系统4.docx_第1页
第1页 / 共18页
C语言仓库管理系统4.docx_第2页
第2页 / 共18页
C语言仓库管理系统4.docx_第3页
第3页 / 共18页
C语言仓库管理系统4.docx_第4页
第4页 / 共18页
C语言仓库管理系统4.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

C语言仓库管理系统4.docx

《C语言仓库管理系统4.docx》由会员分享,可在线阅读,更多相关《C语言仓库管理系统4.docx(18页珍藏版)》请在冰豆网上搜索。

C语言仓库管理系统4.docx

C语言仓库管理系统4

#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模板 > 商务科技

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

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