超市商品管理系统C语言源代码Word文件下载.docx
《超市商品管理系统C语言源代码Word文件下载.docx》由会员分享,可在线阅读,更多相关《超市商品管理系统C语言源代码Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
voidInquire_goodskind(void);
voidInquire_goodsname(void);
intRead_Message(void);
voidRenew_Messahe(void);
voidRevise_Message(void);
voidDelete_Message(void);
voidInsert_Message();
voidShow_Message(void);
intInput_Message(void);
voidCount_Message();
longCount_Profit();
longCount_Amount();
voidSort_amount(void);
voidSort_Message(void);
voidSort_Message(void)
intchoice;
do
{
clrscr();
printf("
\n\n\n*******商品信息排行********\n\n"
);
1:
按库存量排行\n\n"
0:
返回主菜单\n\n"
请选择(0-1):
"
scanf("
%d"
&
choice);
switch(choice)
case1:
Sort_amount();
break;
case0:
}
}while(choice!
=0);
}
voidSort_amount(void)/*库存量排序*/
structgoods_type*p,*q[MAX];
inti,j,k;
库存排行"
PRINT1;
\n\n排名商品号商品名称商品类别库存量\n\n"
p=goods;
for(i=0;
i<
sum;
i)
q[i]=p;
k=i;
for(j=i1;
j<
j)
if(q[k]->
amount<
q[j]->
amount)
k=j;
if(k!
=i)
p=q[i];
q[i]=q[k];
q[k]=p;
%d"
i1);
q[i]->
num);
%s"
name);
kind);
%d\n"
amount);
bioskey(0);
longCount_Amount()/*统计库存量*/
inti,j=0,choice,count_num,Amount;
charinquire_name[10];
\n请输入想要统计的商品号:
count_num);
if(goods[i].num==count_num)
Amount=goods[i].amount;
-------------------------"
商品号库存量"
\n崓"
goods[i].num,Amount);
else
j;
if(j==sum)
该商品信息不存在!
!
"
longCount_Profit()/*统计利润模块*/
inti,choice,j=0,count_num,profit;
profit=goods[i].out_price-goods[i].in_price;
\n商品利润"
\n-------------------------------"
\n商品号利润"
\n崓\n"
goods[i].num,&
profit);
\n该商品不存在!
\n按任意键返回主菜单!
voidCount_Message(void)/*统计模块*/
do{
**************统计商品信息*************\n\n\n"
*******1:
统计库存量************\n\n\n"
*******2:
统计利润************\n\n\n"
*******0:
返回主菜单************\n\n\n"
*******请选择(0-2):
************\n\n\n"
Count_Amount();
case2:
Count_Profit();
intInput_Message(void)/*输入模块*/
inti=0,s=MAX;
charbd;
开始输入商品信息.\n"
\n\n商品信息:
(最多%d)\n"
s);
===============================\n"
\n第%d商品"
\n商品号:
goods[i].num);
if(goods[i].num==0)break;
\n商品名称:
scanf("
%s"
goods[i].name);
\n商品种类:
goods[i].kind);
\n商品库存量:
goods[i].amount);
\n进货价格:
goods[i].in_price);
\n销售价格:
goods[i].out_price);
\n生产日期(yyyy-mm-dd):
%d-%d-%d"
goods[i].pro_time.year,&
goods[i].pro_time.month,&
goods[i].pro_time.day);
\n保质期:
goods[i].save_day);
继续输入信息,yorn?
?
fflush(stdin);
%c"
bd);
if(bd=='
y'
i;
break;
}while(i<
MAX);
\n--%d所有商品录入完毕!
--\n\n\n"
getch();
按任意键返回主菜单."
sum=i;
输入回车返回主菜单!
voidShow_Message(void)/*显示输出模块*/
inti=0,j=0,count,page=7;
\n\n--商品信息--在第%d页\n\n"
page);
PRINT2;
if(goods[i].num!
=0)
if(j%page!
PRINT3;
if(goods[i1].num!
按任意键继续!
\n\n--------商品信息--------在第%d页\n\n"
page);
}while(goods[i].num!
按任意键返回主菜单!
voidInsert_Message(void)/*添加商品信息模块*/
inti=sum,j,flag=0;
charchoice;
\n\n添加一种新商品\n\n"
\n-------------------------------------------------\n"
goods[i].num=sum;
\n新商品号:
goods[i].num);
\n新商品名:
\n新商品种类:
\n新商品数量:
\n进价:
\n售价:
\n\n想继续添加商品吗?
(Y/N)"
choice=getch();
if(choice=='
||choice=='
Y'
继续"
flag=1;
flag=0;
}while(flag==1);
\n\n\n按任意键返回主菜单........."
voidDelete_Message(void)/*删除商品信息模块*/
inti,j,numberkey,flag=0;
开始删除......\n\n"
请输入你要删除的商品号:
\n"
numberkey);
if(goods[i].num==numberkey)
for(j=i;
goods[j]=goods[j1];
sum--;
删除成功!
\n\n\n"
if(flag==0)
不存在该商品信息!
!
\n\n是否继续输入(y/n)?
\n"
getchar();
}while(choice=='
\n按任意键返回"
voidRevise_Message(void)/*修改商品信息模块*/
inti,j,flag,choice,revise_num;
charch;
\n\n开始修改..."
\n\n请输入你想输入的商品号:
revise_num);
if(goods[i].num==revise_num)
确定修改此商品信息吗?
(y/n)"
ch=getchar();
if(ch='
\n\n\n修改商品信息的哪一项?
\n\n1:
商品名称"
\n\n2:
商品类型"
\n\n3:
销售价格"
\n\n4:
生产日期"
\n\n5:
保质期"
\n\n请选择(0-5)\n"
\n%d"
printf("
请输入修改后的商品名\n"
goods[i].name);
请输入修改后的商品类型\n"
goods[i].kind);
case3:
请输入修改后的商品销售价格\n"
case4:
请输入修改后的商品生产日期\n"
case5:
请输入修改后的商品保质期\n"
修改商品信息:
不存在该商品信息.."
\n\n继续修改商品信息吗(y/n)?
if(ch=='
继续.\n"
修改完成!
\n\n"
voidRenew_Message(void)/*更新商品信息模块*/
\n\n*********更新商品信息*********"
添加商品信息.\n\n"
删除商品信息.\n\n"
修改商品信息.\n\n"
\n\n0:
返回上一级.\n\n"
\n\n请选择(0-3):
Insert_Message();
Delete_Message();
Revise_Message();
intRead_Message(void)/*读取信息模块*/
FILE*fp;
inti=0;
if((fp=fopen("
999.txt"
"
rb"
))==NULL)
\n\t现在还没有保存全部信息,按回车键回到主菜单输入商品信息!
\n\t按任意键返回!
return;
while(feof(fp)!
=1)
fread(&
goods[i],sizeof(structgoods_type),1,fp);
if(goods[i].num==0)
fclose(fp);
return(i);
voidInquire_goodsname(void)/*按商品名称查询*/
inti,j,choice;
charnamekey[10];
j=0;
开始查询..."
请输入你要查询的商品号:
namekey);
if(strcmp(goods[i].name,namekey)==0&
&
goods[i].num!
---商品信息----"
该商品不存在!
按任意键返回主菜单."
voidInquire_goodskind(void)/*按商品类型查询*/
charkindkey[10];
请输入你要查询的商品种类:
kindkey);
if(strcmp(goods[i].kind,kindkey)==0&
voidInquire_Message(void)/*查询模块*/
\n*****查询商品信息*****\n"
\n*****1:
按商品名称.*****\n"
\n*****2:
按商品种类.*****\n"
\n*****0:
返回上一级.*****\n"
\n请选择(0-2):
*****\n"
Inquire_goodsname();
Inquire_goodskind();
Save_Message(intsum)/*保存模块*/
inti;
wb"
\n\n不能打开文件!
exit();
=sum;
if(fwrite(&
goods[i],sizeof(structgoods_type),1,fp)!
写文件出错!