C语言收银管理系统_第1页
C语言收银管理系统_第2页
C语言收银管理系统_第3页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、妥网畀范学院软件学院题目:指导老师: 班级:日期:程序设计基础课程实践报告超市结账系统刘凌霞2016级软件工程1班2016年12月28日学号姓名成绩164804014姬新科164804047岳其威成员及成绩二O六年十二月一、设计目的解决问题:超市需要处理大量的仓库信息,时刻更新产品的销售信息,不断 添加商品信息。传统的人工记录比较复杂、困难。因此,面对不同种类的信息, 需要合理的数据库结构来保存数据信息,所以超市收银管理程序是当今社会所必 不可少的。它的特点就是能够实时的和准确的控制店内的销售情况。如果能够实 时掌握销售流程及销售情况,有效地加速商品的周转率并提高服务质量,而且可以减少产品售价

2、不符等所产生的问题。一个好的超市收银管理程序能够给企业带 来巨大的便利,以及效益。主要功能:(1) 收银人员录入商品号及购买数量,计算应付钱数。(2) 管理人员对商品信息(商品号、商品名、单价)进行输入、删除、修改和查 询。(3) 顾客能清楚自己收钱数和应找钱数。(4) 顾客能看到自己购买的商品及价格数量以及找零。二、总体设计2.1功能模块图:2.2主函数流程图:2.3购买商品的流程图:建兀序号描入购灵纹1环入E钱薮1三、功能描述3.1、登录系统用于超市管理人员登陆及操作,选择1,进行建立商品信息库;选择 2,进行选购商品信息;选择3,进行修改商品信息内容;选择 4,退出程序;int mai

3、n()int a,y;printf(”超市结账系统n");printf("软工一班 n 姬新科 164804014n 岳其威 164804047'n");printf("2016 年 12 月 28 日 n”);prin tf("$n");printf("欢迎使用超市管理系统n");printf(" ¥¥¥¥¥¥¥¥¥¥n");prin tf("n");while(1)

4、prin tf("n ”);printf ("1.商品信息录入n");printf ("2.购买商品 n”);printf ("3.修改商品信息n");printf ("4.退出 n”);scan f("%d", &a);if (a < 1|a > 4)printf ("输入错误请重新输入n");if(a=1)system ("cls");good (a);if(a=2)system ("cls");y=buy (a);jie

5、zha ng(y);sum=0;if(a=3)system ("cls");xiugai(a);if(a=4)system ("cis");printf("谢谢使用.");break;return 0;3.2、建立商品信息库(由函数void good(int e)实现)由超市工作人员操作,用于录入超市商品信息(商品序号、名称、进价、售 价、数量),建立商品信息库。void good(i nt e)int兀printf("请输入要录入的商品编号:”);sca nf("%d", &x);printf(

6、”货物名称:”);sca nf("%s", &goodsx. name);printf(” 售价:");sca nf("%lf", &goods x .price);printf(” 库存量:");scan f("%d",& goods x.amou nt);3.3、购买商品系统(由int buy(int b)函数实现)计算所需付的钱的用户选择想要购买的的商品序号,之后选择购买数量 总额。int buy(i nt b)int n,m;double sum=0;printf("请输入

7、要选购商品的序号:n"); sca nf("%d",&n);printf("请问您需要买数量:n");sca nf("%d",&m);goods n .am oun t=goods n .am oun t-m;sum=sum+m*goods n.price;return sum;3.4、结账系统(由函数 void jiezhang(double c)实现显示顾客应付的钱数(购买数量的乘积的累加求出应付钱数),顾客付钱在 输入实际付钱数目后输出找零数目。void jiezha ng(double c)doubl

8、e a,b=0;printf("请输入顾客所付的金额:");scan f("%lf",&a);if(c>a)printf("钱不够 n”);elseb=a-c;printf("收款 %.2fn 找零 %.2fn",a,b);3.5、修改商品信息(由函数 void xiugai(int d)实现)由超市工作人员操作,包括修改所选的商品的编号,价格与库存;最后显示 所该商品的改后信息。void xiugai (int d)int nu m,course;printf("输入要修改的商品编号:”);scan

9、 f("%d", &n um);printf("选择你要修改的项目:1.price 2.amountn");scan f("%d", &course);switch(course)case 1:pri ntf("请输入您要修改为的价格:n");sca nf("%lf", &goods nu m.price);printf("%d 号商品的价格修改为:.2fn",num,goodsnum.price);break;case 2:pri ntf("

10、;请输入您要修改为的库存:n");sca nf("%d", &goods nu m.am oun t);printf("%d 号商品的库存修改为:%dn",num,goodsnum.amount);break;四、详细设计4.1进入超市管理系统主菜单4.2选择1进入商品信息的录入界面,进行商品信息的录入4.3选择2进入商品购买及结账界面4.4选择3进入修改商品界面441 修改商品库存4.4 。 2修改商品价格4.5、选择4退出超市收银管理系统源代码:#in clude<stdio.h>#in clude<stdlib.

11、h>int buy(i nt b);void good(i nt e);void jiezha ng(double c);void xiugai (int d);double sum=0;struct goodint num;char n ame10;double price;int amount;goods50;int mai n()int a,y;164804047' n");printf(”超市结账系统n");printf("软工一班n姬新科164804014n岳其威 printf("2016 年 12 月 28 日 n”);prin

12、 tf("$n");printf("欢迎使用超市管理系统n");printf(" ¥¥¥¥¥¥¥¥¥¥n");prin tf("n");while(1)prin tf("n ”);printf ("1.商品信息录入n");printf ("2.购买商品 n”);printf ("3.修改商品信息n");printf ("4.退出 n”);scan

13、f("%d", &a);if (a < 1|a > 4)printf ("输入错误请重新输入n");if(a=1)system ("cls");good (a);if(a=2)system ("cls");y=buy (a);jiezha ng(y);sum=0;if(a=3)system ("cis"); xiugai(a);if(a=4)system ("cis");printf("谢谢使用.");break;return 0;vo

14、id good(i nt e)int兀printf("请输入要录入的商品编号: ”); sca nf("%d", &x);printf("货物名称:");sca nf("%s", &goodsx. name);printf("售价:");scan f("%lf", &goodsx.price);printf("库存量:");scan f("%d", &goods x .amou nt);int buy(i nt b

15、)int n,m;double sum=0;printf("请输入要选购商品的序号:n"); sca nf("%d",&n);printf("请问您需要买数量:n");sca nf("%d",&m);goods n .am oun t=goods n .am oun t-m;sum=sum+m*goods n.price;return sum;void jiezha ng(double c)double a,b=0;printf("请输入顾客所付的金额:"); scan f(&q

16、uot;%lf",&a);if(c>a)printf("钱不够 n”);elseb=a-c;printf("收款 %.2fn 找零 %.2fn",a,b);void xiugai (int d) int nu m,course;printf(”输入要修改的商品编号:”);scan f("%d",&n um);printf("选择你要修改的项目:1.price 2.amountn");scan f("%d",&course);switch(course)case 1:

17、pri ntf("请输入您要修改为的价格:n");sca nf("%lf", &goods nu m.price);printf("%d 号商品的价格修改为:.2fn",num,goodsnum.price); break;case 2:pri ntf(”请输入您要修改为的库存:n ”);sca nf("%d", &goods nu m.am oun t);printf("%d 号商品的库存修改为:dn",num,goodsnum.amount); break;五、调试与测试5.

18、1调试方法因为整个系统各模块之间有一定关联性, 所以大部分模块在调试时,都和这 段函数相关联的模块放在一起调试。5.2测试结果的分析与讨论switch语句时不能处理好 system ("cls")清屏指令的应用,于是换用了“ if语句并列使用”在做结账函数的时候对数据类型的讨论,数据类型在int与double之间选择,各自调试,结果因为在使用double时,scanf数据类型将 %lf写成% f,导致商品信息建立时的售价环节不能正常录入,导致后边的整个购买结账模块无法正 常运行。经过讨论最后发现并及时改正,使结账模块得以正常运行。5.3测试过程中遇到的主要问题及采取的解决措施测试过程中首先遇上的是各种细节上的错误,如;”、“ &等符号忘写,解决法是检查程序,逐个排查。在做结账函数的时候因为定义数据类型的讨论,数据类型在int与double之间选择,各自调试,结果因为在使用double时seanf数 据类型将%lf写成% f,导致商品信息建立时的售价环节不能正常录入,导致 后边的整个购买结账模块无法正常运行。六、团队成员与分工成员姓名学号分工负责人姬新科164804014商品的结账与商品 的修改队员岳其威164804047任务的菜单、商品信 息的录入七、课程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论