超市管理系统C语言课程设计报告.docx

上传人:b****1 文档编号:1415928 上传时间:2023-04-30 格式:DOCX 页数:25 大小:302.20KB
下载 相关 举报
超市管理系统C语言课程设计报告.docx_第1页
第1页 / 共25页
超市管理系统C语言课程设计报告.docx_第2页
第2页 / 共25页
超市管理系统C语言课程设计报告.docx_第3页
第3页 / 共25页
超市管理系统C语言课程设计报告.docx_第4页
第4页 / 共25页
超市管理系统C语言课程设计报告.docx_第5页
第5页 / 共25页
超市管理系统C语言课程设计报告.docx_第6页
第6页 / 共25页
超市管理系统C语言课程设计报告.docx_第7页
第7页 / 共25页
超市管理系统C语言课程设计报告.docx_第8页
第8页 / 共25页
超市管理系统C语言课程设计报告.docx_第9页
第9页 / 共25页
超市管理系统C语言课程设计报告.docx_第10页
第10页 / 共25页
超市管理系统C语言课程设计报告.docx_第11页
第11页 / 共25页
超市管理系统C语言课程设计报告.docx_第12页
第12页 / 共25页
超市管理系统C语言课程设计报告.docx_第13页
第13页 / 共25页
超市管理系统C语言课程设计报告.docx_第14页
第14页 / 共25页
超市管理系统C语言课程设计报告.docx_第15页
第15页 / 共25页
超市管理系统C语言课程设计报告.docx_第16页
第16页 / 共25页
超市管理系统C语言课程设计报告.docx_第17页
第17页 / 共25页
超市管理系统C语言课程设计报告.docx_第18页
第18页 / 共25页
超市管理系统C语言课程设计报告.docx_第19页
第19页 / 共25页
超市管理系统C语言课程设计报告.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

超市管理系统C语言课程设计报告.docx

《超市管理系统C语言课程设计报告.docx》由会员分享,可在线阅读,更多相关《超市管理系统C语言课程设计报告.docx(25页珍藏版)》请在冰点文库上搜索。

超市管理系统C语言课程设计报告.docx

超市管理系统C语言课程设计报告

超市管理系统

本设计运用C语言程序设计了一个超市管理系统。

主要实现的功能有进货功能、退货功能、商品销售功能、商品信息查询功能、商品信息浏览功能。

1.开发工具和编程语言:

开发工具:

MicrosoftVisualC++6.0

编程语言:

C语言

2.模块划分

3.系统功能与函数的对应关系

本系统包括一个主函数和6个被调函数,分别如下:

(1)主函数voidmain()

(2)功能选择函数voidgongneng()

(3)进货功能函数voidjinhuo()

(4)退货功能函数voidtuihuo()

(5)商品销售函数voidspxs()

(6)信息查询函数voidxxcx()

(7)信息浏览函数voidspxxpx()

4.结构体类型说明

商品信息包括:

商品编号、商品名称、商品进价、商品售价、商品库存数量。

结构体类型定义为:

structxinxi//结构体

{

charbh[30];//商品编号

charbhstr[30];//商品名称

floatjinjia;//商品进价

floatshoujia;//商品售价

intkucun;//商品库存数量

};

5.系统函数的设计与实现

5.1主函数

主函数中运行功能选择函数,运行时可以显示系统界面,系统界面如图5-1所示。

图5-1系统主界面

主函数中可以实现各种功能的选择。

5.2进货功能函数

(1)流程图

进货功能函数实现进货功能,能够实现要进货商品的信息添加或录入。

进货时,先检测本商品是否存在,若存在则修改库存数量等相关信息;否则添加本商品的相关信息。

进货流程图如图5-2所示。

 

 

图5-2进货功能流程图

(2)系统代码

voidjinhuo()//进货处理函数

{

charstr[30];

inti,a=2;

while(a==2)

{

printf("请输入商品的名称:

");

scanf("%s",str);

for(i=0;i

if(strcmp(str,s[i].bhstr)==0)//查找要进货的商品

{

printf("编号:

%s,进价:

%5.1f,售价:

%5.1f,库存数量:

%d\n",s[i].bh,s[i].jinjia,s[i].shoujia,s[i].kucun);

printf("请输入新库存数量:

");

scanf("%d",&s[i].kucun);//修改库存信息

printf("库存信息修改完成\n");

break;

}

if(i>=b)//如果没有找到要进货的商品,则添加商品信息

{

printf("添加商品信息:

\n");

printf("请输入商品编号:

");

scanf("%s",s[i].bh);

printf("请输入商品名称:

");

scanf("%s",s[i].bhstr);

printf("请输入商品进价:

");

scanf("%f",&s[i].jinjia);

printf("请输入商品售价:

");

scanf("%f",&s[i].shoujia);

printf("请输入商品库存数量:

");

scanf("%d",&s[i].kucun);

printf("商品信息添加完成\n");

b++;

}

printf("请选择:

");

printf("1.返回开始菜单");

printf("2.继续进行进货处理");

scanf("%d",&a);

}

}

(3)运行效果

输入:

选项1

输出:

请输入商品的名称:

输入:

1

输出:

添加商品信息

请输入商品编号:

……

输入:

1

输出:

商品信息添加完成

请选择:

1.返回开始菜单2.继续进行进货处理

输入:

2

输出:

请输入商品名称:

输入:

1

输出:

编号:

1,进价:

1.0,售价:

1.0,库存数量:

1

请输入新库存:

输入:

2

输出:

库存信息修改完成

请选择:

1.返回开始菜单2.继续进行进货处理

输入:

1

返回开始菜单

运行效果图如图5-3所示。

图5-3进货功能运行界面

5.3退货功能函数

(1)流程图

退货功能函数实现退货功能,能够实现要退货商品的信息修改。

退货时,修改库存数量等相关信息;若库存数量为0,提示是否删除本商品,若选“是”则删除该商品的信息。

退货流程图如图5-4所示。

 

 

 

图5-4退货功能流程图

(2)系统代码

voidtuihuo()//退货处理函数

{

inti,a,c=2,d;

charstr[30];

while(c==2)

{

printf("请输入要退的商品名称:

");

scanf("%s",str);

for(i=0;i

if(strcmp(str,s[i].bhstr)==0)//查找要退货的商品

{

printf("请输入要退商品的数量:

");

scanf("%d",&d);

printf("请选择是否要退货");

printf("1.是");

printf("2.否");

scanf("%d",&a);

if(a==1)

{

s[i].kucun=s[i].kucun+d;//修改库存信息

printf("退货已成功\n");

}

if(s[i].kucun==0)//如果库存数量为零,提示是否删除该商品

{

printf("本商品库存为0,请选择是否删除本商品");

printf("1.是");

printf("2.否");

scanf("%d",&a);

if(a==1)

{

strcpy(s[i].bh,"该商品不存在");

strcpy(s[i].bhstr,"该商品不存在");

s[i].jinjia=0;

s[i].shoujia=0;

s[i].kucun=0;

printf("本商品已删除\n");

}

}

}

printf("请选择:

");

printf("1.返回开始菜单");

printf("2.继续进行退货处理");

scanf("%d",&c);

}

}

(3)运行效果

输入:

2

输出:

请输入要退的商品名称:

输入:

1

输出:

请输入要退商品的数量:

输入:

1

输出:

请选择是否要退货1.是2.否

输入:

1

输出:

退货已成功

请选择:

1.返回开始菜单2.继续进行退货处理

输入:

1

返回开始菜单

运行效果图如图5-5所示。

图5-5退货功能运行界面

5.4商品销售函数

(1)流程图

商品销售函数实现商品购买功能。

购买商品时输入要购买商品的编号、购买数量,能够计算出应收金额和应收总金额,同时修改库存数量。

此外,当实收金额少于应收总金额时,此次销售不成功,可根据用户的要求进行修改或放弃。

 

商品销售流程图如图5-6所示。

 

 

是否

是否

 

否是

图5-6商品销售流程图

(2)系统代码

voidspxs()//商品销售函数

{

charstr[30];

inti,sl,a=2,c;

floatje,jez=0,ssje,zl;

while(a==2)

{

printf("请输入购买商品的编号:

");

scanf("%s",str);

for(i=0;i

if(strcmp(str,s[i].bhstr)==0)//查找购买的商品

{

printf("请输入要购买的数量:

");

scanf("%d",&sl);

while(sl>s[i].kucun)//购买的数量如果大于库存数量

{

printf("商品库存数量不足,请重新输入要购买的数量:

");

scanf("%d",&sl);

}

printf("应收金额为:

");

je=sl*s[i].shoujia;//计算购买该商品的金额

printf("%5.1f\n",je);

s[i].kucun=s[i].kucun-sl;//修改库存信息

printf("应收总金额为:

");

jez=jez+je;//计算购买商品的总金额

printf("%5.1f\n",jez);

break;

}

if(i>=b)//如果没有找到该商品

printf("对不起,未找到该商品\n");

printf("请选择:

");

printf("1.结账");

printf("2.继续购买商品");

scanf("%d",&a);

if(a==1)//结账

{

printf("请输入实收金额:

");

scanf("%f",&ssje);

while(ssje

{

printf("金额不足,请选择:

");

printf("1.重新付款");

printf("2.取消购买");

scanf("%d",&c);

if(c==1)//重新付款

{

printf("请输入实收金额:

");

scanf("%f",&ssje);

}

else//取消购买某种商品

{

printf("请输入取消购买商品的编号或名称:

");

scanf("%s",str);

for(i=0;i

if((strcmp(str,s[i].bh)==0)||(strcmp(str,s[i].bhstr)==0))//查找要取消购买的商品

{

printf("请输入取消购买的数量");

scanf("%d",&sl);

s[i].kucun=s[i].kucun+sl;//修改库存信息

jez=jez-sl*s[i].shoujia;//重新计算总金额

printf("取消购买成功\n");

}

}

}

zl=ssje-jez;//找零

printf("找零%5.1f\n",zl);

printf("购买成功\n");

}

if(a!

=2)

{

printf("请选择:

");

printf("1.返回开始菜单");

printf("2.继续购买商品");

scanf("%d",&a);

jez=0;

}

}

}

(3)运行效果

输入:

3

输出:

请输入购买商品的编号:

输入:

1

输出:

请输入要购买的数量:

输入:

1

输出:

应收金额为:

1.0

应收总金额为:

1.0

请选择:

1.结账2.继续购买商品

输入:

2

输出:

请输入购买商品的编号:

输入:

2

输出:

请输入要购买的数量:

输入:

1

输出:

应收金额为:

2.0

应收总金额为:

3.0

请选择:

1.结账2.继续购买商品

输入:

1

输出:

请输入实收金额:

输入:

2

输出:

金额不足,请选择:

1.重新付款2.取消购买

输入:

1

输出:

请输入实收金额:

输入:

5

输出:

找零2.0

购买成功

请选择:

1.返回开始菜单2.继续购买商品

输入:

1

返回开始菜单

运行效果图如图5-7所示。

图5-7商品销售功能运行界面

5.5商品信息查询函数

(1)流程图

商品信息查询函数实现查询商品信息的功能。

查询时输入商品的编号或名称,输出商品的编号、名称、进价、售价、库存数量。

 

商品信息查询流程图如图5-8所示。

 

 

图5-8商品信息查询流程图

(2)系统代码

voidxxcx()//商品信息查询函数

{

charstr[30];

inti,a=2;

while(a==2)

{

printf("请输入要查询商品的编号或名称:

");

scanf("%s",str);

for(i=0;i

if((strcmp(str,s[i].bh)==0)||(strcmp(str,s[i].bhstr)==0))

{

printf("商品编号:

%s\n",s[i].bh);

printf("商品名称:

%s\n",s[i].bhstr);

printf("商品进价:

%5.1f\n",s[i].jinjia);

printf("商品售价:

%5.1f\n",s[i].shoujia);

printf("商品库存:

%d\n",s[i].kucun);

break;

}

if(i>=b)//未找到要查询的商品

printf("对不起,未找到该商品\n");

printf("请选择:

");

printf("1.返回开始菜单");

printf("2.继续查询商品");

scanf("%d",&a);

}

}

(3)运行效果

输入:

4

输出:

请输入要查询商品的编号或名称:

输入:

1

输出:

商品编号:

1

商品名称:

1

商品进价:

1.0

商品售价:

1.0

商品库存:

1

请选择:

1.返回开始菜单2.继续查询商品

输入:

2

输出:

请输入要查询商品的编号或名称:

输入:

3

输出:

对不起,未找到该商品

请选择:

1.返回开始菜单2.继续查询商品

输入:

1

返回开始菜单

运行效果图如图5-9所示。

图5-9商品信息查询功能运行界面

5.6商品信息浏览函数

(1)流程图

商品信息浏览函数实现浏览全部商品信息的功能。

浏览时商品按编号依次输出商品的编号、名称、进价、售价、库存数量信息。

商品信息浏览流程图如图5-10所示。

 

图5-10商品信息浏览流程图

(2)系统代码

voidspxxpx()//商品信息排序函数

{

inti,j,t5;

floatt3,t4;

chart1[30],t2[30],a;

for(j=1;j<=b-1;j++)//排序

for(i=0;i

if(strcmp(s[i].bh,s[i+1].bh)>0)

{strcpy(t1,s[i].bh);strcpy(t2,s[i].bhstr);t3=s[i].jinjia;t4=s[i].shoujia;t5=s[i].kucun;strcpy(s[i].bh,s[i+1].bh);strcpy(s[i].bhstr,s[i+1].bhstr);s[i].jinjia=s[i+1].jinjia;

s[i].shoujia=s[i+1].shoujia;s[i].kucun=s[i+1].kucun;strcpy(s[i+1].bh,t1);strcpy(s[i+1].bhstr,t2);s[i+1].jinjia=t3;s[i+1].shoujia=t4;s[i+1].kucun=t5;

}

printf("按编号依次输出商品信息:

\n");

for(i=0;i

printf("商品编号:

%s\n商品名称:

%s\n商品进价:

%5.1f\n商品售价:

%5.1f\n商品库存:

%d\n\n",

s[i].bh,s[i].bhstr,s[i].jinjia,s[i].shoujia,s[i].kucun);

printf("请输入任意字符返回开始菜单");

scanf("%s",&a);

}

(3)运行效果

输入:

5

输出:

按编号依次输出商品信息:

商品编号:

1

商品名称:

1

商品进价:

1.0

商品售价:

1.0

商品库存:

1

商品编号:

2

商品名称:

2

商品进价:

2.0

商品售价:

2.0

商品库存:

2

商品编号:

3

商品名称:

3

商品进价:

3.0

商品售价:

3.0

商品库存:

3

请输入任意字符返回开始菜单

输入:

w

返回开始菜单

运行效果图如图5-11所示。

图5-11商品信息浏览功能运行界面

6.总结

通过C语言程序设计实现了超市管理系统,本系统完成了进货功能、退货功能、商品销售功能、商品信息查询功能和商品信息浏览功能,具有功能齐全和操作简单的特点,但是实用性还有待进一步改进。

友情提示:

本资料代表个人观点,如有帮助请下载,谢谢您的浏览!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2