C语言仓库管理系统005.docx
《C语言仓库管理系统005.docx》由会员分享,可在线阅读,更多相关《C语言仓库管理系统005.docx(69页珍藏版)》请在冰豆网上搜索。
C语言仓库管理系统005
#include
#include
#include"conio.h"
#include"stdlib.h"
#include"string.h"
structuser/*管理员*/
{
charname[10];
charpassword[10];
};
structusers/*用户*/
{
charname[5];
charpassword[5];
};
structcargo/*货物*/
{
charnum[12];
charname[20];
doubleprice;
intcount;
structcargo*next;
};
intKEY();/*管理员密码检测与设置*/
intnewKEY();/*管理员密码设置*/
intchecking();/*管理员密码检测*/
intchecking1();/*验证用户*/
intduchu(charoutfile[],structcargostu[]);/*读出信息*/
voidchkey();/*修改密码*/
voidabout(inti);/*信息*/
voidEXPLAIN();/*介绍*/
voidbox();/*操作格*/
voidselecth(int*sel1,int*sel2,char*_key,intj);/*选择*/
voidmenu();/*管理员目录*/
voidgotoxy(inta,intb);/*坐标*/
voidLOGO1();
voidbox2();/*目录格*/
void_f();/*失败界面*/
void_v();/*成功界面*/
voidNEWusers();/*新建用户*/
voidzmenu();/*主目录*/
voidymenu();/*用户目录*/
voidbox3();/*信息输入输出显示格*/
voidshuru();/*输入信息*/
voidputname(charoutfile[],intj);/*输入文件名*/
voidchucun(charoutfile[]);/*储存文件*/
voidxianshi(intk);/*显示信息*/
voidchazhao(intk);/*查找信息*/
voidchazhaonum(intk);/*编号查找*/
voidchazhaomame(intk);/*名字查找*/
voidchazhaoprice(intk);/*价格查找*/
voidwenjianming(intk);/*文件名输出*/
voidcuowu();/*找不到文件提示*/
voidshanchu();/*删除数据*/
voidshujiuguanli();/*数据管理*/
voidyonghuguanli();/*用户管理*/
voidshanchuyonghu();/*删除用户*/
voidchakanyonghu();/*查看用户*/
voidxiugai();/*修改数据*/
main()
{
inti=0;
system("colorF0");
LOGO1();
zmenu();
}
voidmenu()/*管理员目录*/
{
char_key[10]={'<'};
inth=9;
intsel1=0,sel2=-1;
system("color70");
for(;;)
{
sel2=-1;
while(sel2==-1)
{
box2();
gotoxy(30,4);
printf("%c管理员目录%c",16,17);
gotoxy(23,19);
printf("%c按'up/down,enter'选择%c",16,17);
sel2=-1;
gotoxy(25,h);
printf("1:
数据管理%c",_key[0]);
gotoxy(25,h+1);
printf("2:
用户管理%c",_key[1]);
gotoxy(25,h+2);
printf("3:
修改管理员密码%c",_key[2]);
gotoxy(25,h+3);
printf("4:
软件信息%c",_key[3]);
gotoxy(25,h+4);
printf("5:
返回%c",_key[4]);
selecth(&sel1,&sel2,_key,4);
}
system("cls()");
switch(sel2)
{
case0:
shujiuguanli();break;
case1:
yonghuguanli();break;
case2:
chkey();break;
case3:
about
(2);break;
case4:
zmenu();break;
}
if(sel2=sel1)break;
}
}
voidymenu()/*用户目录*/
{
char_key[7]={'<'};
inth=9;
intsel1=0,sel2=-1;
system("color70");
for(;;)
{
sel2=-1;
while(sel2==-1)
{
box2();
gotoxy(30,4);
printf("%c用户目录%c",16,17);
gotoxy(23,19);
printf("%c按'up/down,enter'选择%c",16,17);
sel2=-1;
gotoxy(25,h+1);
printf("1:
显示所有文件名%c",_key[0]);
gotoxy(25,h+2);
printf("2:
输出一个文件内信息%c",_key[1]);
gotoxy(25,h+3);
printf("3:
查找一个%c",_key[2]);
gotoxy(25,h+4);
printf("4:
软件信息%c",_key[3]);
gotoxy(25,h+6);
printf("5:
返回%c",_key[4]);
selecth(&sel1,&sel2,_key,4);
}
system("cls()");
switch(sel2)
{
case0:
wenjianming(3);break;
case1:
shujiuguanli();break;
case2:
chazhao(3);;break;
case3:
about(3);break;
case4:
zmenu();break;
}
if(sel2=sel1)break;
}
}
voidzmenu()/*主目录*/
{
char_key[4]={'<'};
inth=9;
intsel1=0,sel2=-1;
inti=0;
system("color70");
for(;;)
{
sel2=-1;
while(sel2==-1)
{
box2();
gotoxy(30,4);
printf("%c主界面%c",16,17);
gotoxy(23,19);
printf("%cPress'up/down,enter'choose%c",16,17);
sel2=-1;
gotoxy(25,h);
printf("1:
管理员登录%c%c",_key[0],_key[0]);
gotoxy(25,h+1);
printf("2:
用户登录%c%c",_key[1],_key[1]);
gotoxy(25,h+2);
printf("3:
软件信息%c%c",_key[2],_key[2]);
gotoxy(25,h+3);
printf("4:
退出%c%c",_key[3],_key[3]);
selecth(&sel1,&sel2,_key,3);
}
system("cls()");
switch(sel2)
{
case0:
(i=KEY());break;
case1:
(i=checking1());break;
case2:
about
(1);break;
case3:
exit
(1);break;
}
if(i!
=0)break;
}
if(i==1)/*管理员入口*/
{
box();
_v();
system("cls");
menu();
}
elseif(i==2)/*用户入口*/
{
box();
_v();
ymenu();
}
else
{
box();
system("colorc0");
_f();
zmenu();
}
}
voidyonghuguanli()/*用户管理*/
{
char_key[7]={'<'};
inth=10;
intsel1=0,sel2=-1;
system("color70");
for(;;)
{
sel2=-1;
while(sel2==-1)
{
box2();
gotoxy(30,4);
printf("%c用户管理%c",16,17);
gotoxy(23,19);
printf("%c按'up/down,enter'选择%c",16,17);
sel2=-1;
gotoxy(25,h);
printf("1:
查看用户%c%c",_key[0],_key[0]);
gotoxy(25,h+1);
printf("2:
添加用户%c%c",_key[1],_key[1]);
gotoxy(25,h+2);
printf("3:
删除用户%c%c",_key[2],_key[2]);
gotoxy(25,h+3);
printf("4:
返回%c%c",_key[3],_key[3]);
selecth(&sel1,&sel2,_key,3);
}
system("cls()");
switch(sel2)
{
case0:
chakanyonghu();break;
case1:
NEWusers();break;
case2:
shanchuyonghu();;break;
case3:
menu();break;
}
if(sel2=sel1)break;
}
}
voidshujiuguanli()/*数据管理*/
{
char_key[8]={'<'};
inth=9;
intsel1=0,sel2=-1;
system("color70");
for(;;)
{
sel2=-1;
while(sel2==-1)
{
box2();
gotoxy(30,4);
printf("%c数据管理%c",16,17);
gotoxy(23,19);
printf("%c按'up/down,enter'选择%c",16,17);
sel2=-1;
gotoxy(25,h);
printf("1:
输入数据%c%c",_key[0],_key[0]);
gotoxy(25,h+1);
printf("2:
显示所有文件名%c%c",_key[1],_key[1]);
gotoxy(25,h+2);
printf("3:
输出一个文件内信息%c%c",_key[2],_key[2]);
gotoxy(25,h+3);
printf("4:
查找查找数据%c%c",_key[3],_key[3]);
gotoxy(25,h+4);
printf("5:
添加数据%c%c",_key[4],_key[4]);
gotoxy(25,h+5);
printf("6:
修改数据%c%c",_key[5],_key[5]);
gotoxy(25,h+6);
printf("7:
删除数据%c%c",_key[6],_key[6]);
gotoxy(25,h+7);
printf("8:
返回%c%c",_key[7],_key[7]);
selecth(&sel1,&sel2,_key,7);
}
system("cls()");
switch(sel2)
{
case0:
shuru();break;
case1:
wenjianming
(2);break;
case2:
xianshi
(2);break;
case3:
chazhao
(2);break;
case4:
shuru();break;
case5:
xiugai();break;
case6:
shanchu();break;
case7:
menu();break;
}
if(sel2=sel1)break;
}
}
voidchakanyonghu()/*查看用户*/
{
FILE*fp;
structusersp;
inti=1;
if((fp=fopen("yonghu.key","rb"))==NULL)
{
box();
gotoxy(28,3);
printf("%c错误信息提示%c",16,17);
gotoxy(28,9);
printf("找不到文件!
");
getch();
system("cls");
yonghuguanli();
}
else
{
box();
gotoxy(28,3);
printf("%c查看用户%c",16,17);
gotoxy(25,6);
printf("帐号");
gotoxy(45,6);
printf("密码");
while(fread(&p,sizeof(p),1,fp)==1)
{
gotoxy(25,6+i);
printf("帐号:
%s",p.name);
gotoxy(45,6+i);
printf("密码:
%s",p.password);
i++;
if(i>=9)
{
gotoxy(55,7+i);
printf("可能有未显示结果,按任意键继续.");
getch();
system("cls()");
box();
gotoxy(28,3);
printf("%c查看用户%c",16,17);
gotoxy(25,6);
printf("帐号");
gotoxy(45,6);
printf("密码");
i=0;
}
}
}
getch();
system("cls()");
yonghuguanli();
}
intKEY()/*管理员账号判断*/
{
FILE*key;
structuserh;
inti=0;
system("color70");
if((key=fopen("guanliyuan.key","ab+"))==NULL)
{
box();
cuowu();
gotoxy(32,13);
printf("找不到文件!
!
");
getch();
system("cls");
zmenu();
}
if(fread(&h,sizeof(h),1,key)!
=1)
{
EXPLAIN();
system("cls");/*清屏*/
i=newKEY();
}
else
i=checking();
fclose(key);
returni;
}
intnewKEY()/*新建管理员*/
{
FILE*key;
structuserstr;
charp[10];
inti=0;
if((key=fopen("guanliyuan.key","ab+"))==NULL)
{
box();
cuowu();
gotoxy(32,13);
printf("找不到文件!
!
");
getch();
system("cls");
zmenu();
}
box();
gotoxy(24,3);
printf("%c请输入帐号和密码%c",16,17);
gotoxy(25,10);
printf("%c帐号:
[]",16);
gotoxy(25,12);
printf("%c密码:
[]",16);
gotoxy(25,13);
printf("%c再次输密码:
[]",16);
gotoxy(40,10);
gets(str.name);
gotoxy(40,12);
gets(str.password);
gotoxy(40,13);
gets(p);
if(strcmp(str.password,p)!
=0)
while
(1)
{
system("cls");
box();
gotoxy(24,3);
printf("%c请输入帐号和密码%c",16,17);
gotoxy(25,8);
printf("两次密码不一样!
再试一次!
");
gotoxy(25,10);
printf("%c帐号:
[%s",16,str.name);
gotoxy(50,10);
printf("]");
gotoxy(25,12);
printf("%c密码:
[]",16);
gotoxy(25,13);
printf("%c再次输密码:
[]",16);
gotoxy(40,12);
gets(str.password);
gotoxy(40,13);
gets(p);
if(strcmp(str.password,p)==0)
{
i=1;break;
}
}
fclose(key);
if((key=fopen("guanliyuan.key","wb+"))==NULL)
{
box();
cuowu();
gotoxy(32,13);
printf("找不到文件!
!
");
getch();
system("cls");
zmenu();
}
fwrite(&str,sizeof(str),1,key);
fclose(key);
system("cls");
box();
gotoxy(30,3);
printf("%c祝贺你设置成功!
%c",16,17);
gotoxy(25,11);
printf("祝贺你!
设置成功!
");
gotoxy(25,12);
printf("请按任意键继续!
");
getch();
system("cls");
returni;
}
voidNEWusers()/*新建客户*/
{
FILE*fp;
structusersstr,h;
charp[10];
inti=1;
if((fp=fopen("yonghu.key","a+"))==NULL)
{
box();
cuowu();
gotoxy(32,13);
printf("找不到文件!
!
");
getch();
system("cls");
yonghuguanli();
}
while(i)/*是否重名*/
{
box();
gotoxy(24,3);
printf("%c请输入帐号和密码%c",16,17);
gotoxy(25,10);
printf("%c帐号:
[]",16);
gotoxy(40,10);
gets(str.name)