商场收银系统(c语言设计)(15页).doc

上传人:1595****071 文档编号:37135666 上传时间:2022-08-30 格式:DOC 页数:15 大小:234.50KB
返回 下载 相关 举报
商场收银系统(c语言设计)(15页).doc_第1页
第1页 / 共15页
商场收银系统(c语言设计)(15页).doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《商场收银系统(c语言设计)(15页).doc》由会员分享,可在线阅读,更多相关《商场收银系统(c语言设计)(15页).doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-商场收银系统(c语言设计)-第 13 页课 程 设 计课程名称 C语言程序设计课程设计A题目名称 商场收银系统 目 录1 系统分析11.1 课程设计内容11.2 系统功能需求分析11.3 数据结构设计12 系统设计22.1 总体设计22.2 详细设计2界面设计2各功能模块的设计33 系统编码设计43.1 main函数44 系统运行55 总结61 系统分析1.1 课程设计内容建立一商品信息文件,商品信息包括商品编号、商品名、商品类别、商品数量、商品价格等。建立一商场收银系统,功能包括:1. 系统登录:运行系统时,收银员应输入姓名(或编号)及密码,验证后方可使用系统。2. 收银操作:收银员逐条输

2、入商品编号及数量,系统自动计算金额,输入完毕后显示应付款,当输入实收额后,计算出找赎值。3. 交易完成后按一定格式显示回单(格式参照一般超市中的打印小票)。 4. 保存所显示的回单。5. 自动按销售情况更新商品信息文件中的数据。6. 查询收银员销售信息。7. 浏览库存商品信息。1.2 系统功能需求分析本系统应具有以下功能:1、文件操作功能进行商品信息管理,以文本的形式保存商品最新信息2、数据输入功能个人登录,消费商品基本资料的输入,销售信息输入等3、数据添加、修改、删除功能商品数据更新,个人入库信息修改更新4、计算功能基本计算功能,销售额处理5、查询功能资料库信息查询7、数据显示功能保障客户知

3、情权,对系统输入输出信息的显示2 系统设计2.1 总体设计按系统分析的功能要求将系统划分为以下几个主要功能模块:1、 建立新文本库信息模块2、 销售系统模块3、 商品销售信息回单模块4、 商品库更新模块5、 销售回单保存模块2.2 详细设计界面设计1、菜单设计主菜单:子菜单:2、输入界面的设计3、信息显示界面的设计根据划分的功能模块,定义以下函数实现各功能:(这部分应介绍各函数的原型,各功能模块实现所用的算法,可用流程图描述)1、主函数main()界面显示密码登录系统主菜单界面销售界面2、charge函数、receipt_m函数商品信息录入商品销售额输出等商品销售信息显示3、input_s函数

4、商品信息录入更新商品基本信息录入最新商品信息保存更新信息库内容4、disp函数最新消费信息建立保存显示信息库内容3 系统编码设计(这部分将代码列出,注意,每个函数开始处要介绍函数的功能,重要的代码应有注释,代码格式按锯齿式编排)3.1 main函数void main()/*主函数:密码登陆与主页面显示使用*/int key,j; int x,i; void openf(); void newf();loop1:clrscr(); gotoxy(10,4); for(i=0;i20;i+) printf(# ); gotoxy(10,16); for(i=0;i20;i+) printf(# )

5、; gotoxy(16,5); printf(this is the salesperson systemn); gotoxy(16,7);printf(1.please iput your number:n); gotoxy(16,8);scanf(%s,salesperson_num); gotoxy(16,9);printf(2.please input your key;n); gotoxy(16,10);scanf(%d,&key);for(j=0;j3;j+)if(strcmp(salesperson_num,salespersonj.num)=0&key=salespersonj

6、.key)break;clrscr(); printf(tyour number or key is wrongn); printf(tplease land againn);getch();goto loop1;3.2 clrscr函数/*主页面显示代码,子函数选择界面*/gotoxy(16,8); printf(welcome to use the systemn); gotoxy(16,10); printf(press enter to continue); getch(); doclrscr(); gotoxy(10,5); for(i=0;i20;i+) printf(* ); g

7、otoxy(16,8); printf(1. build the goods warehouse); gotoxy(16,9); printf(2. charge system); gotoxy(16,10); printf(3. receipt message); gotoxy(16,11); printf(4. add to goods message); gotoxy(16,12); printf(5. sell message); gotoxy(16,13); printf(6. display goods stock); gotoxy(16,14); printf(7. exit);

8、 gotoxy(10,16); for(i=0;i20;i+) printf(* ); gotoxy(16,18); printf(please select the menu:); scanf(%d,&x); while(x8); switch(x) case 1:newf(); break; case 2:charge();break; case 3:receipt_m();break; case 4:input_s();break; case 5:sell_m();break; case 6:disp();break; case 7:exit(); while(1);3.3 newf函数

9、/*新建库信息函数,建立新文档存储更新商品信息*/void newf() void openf(); int i,x; clrscr(); do clrscr(); gotoxy(10,5); for(i=0;i20;i+) printf(* ); gotoxy(16,8); printf(1.the new warehouse filename n); gotoxy(16,9); printf(2.add the goods message); gotoxy(16,10); printf(3.exit); gotoxy(10,16); for(i=0;i20;i+) printf(* );

10、gotoxy(16,18); printf(please select the menu:); scanf(%d,&x); switch(x) case 1:openf(); break; case 2:input_s();break; case 3:exit(); while(1);void openf() int i;char f; clrscr();/*system(cls);*/ printf(tinput the warehouse filename pleasen); scanf(%s,xname); fp=fopen(xname,a); fp1=fopen(b.txt,w); f

11、printf(fp1,%dt%d,n,n1); fclose(fp1); fp2=fopen(c.txt,w); fp3=fopen(d.txt,w);printf(tYou were built the warehouse n);printf(ntcontinue to add goods message?(y/n);f=getch();if(f=y)input_s();3.4 charge函数/*销售信息管理系统*/charge()int i,j,f;int No; float sum=0;float change,receive; clrscr(); gotoxy(10,5); for(

12、i=0;i20;i+) printf(* ); fp1=fopen(b.txt,r); fscanf(fp1,%d%d,&n,&n1); fclose(fp1); if( fp=fopen(a.txt,r)!=NULL) for(i=0;in;i+) fscanf(fp,%d%s%d%d,&goodsi.num,goodsi.name,&goodsi.price,&goodsi.amount); do printf(ntNo.:t); scanf(%d,&No); printf(ntamount:t); scanf(%d,&j);No-; n1+; goodsNo.amount-; sum+=

13、j*goodsNo.price;fp2=fopen(c.txt,a); fprintf(fp2,%st%dt%st%dt%dn,salesperson_num,goodsNo.num,goodsNo.name,goodsNo.price,j); fclose(fp2); fp3=fopen(d.txt,a);fprintf(fp3,%dnt%d,goodsNo.num,j);fclose(fp3);f=getch();if(f=0)getch();break;while(1); printf(ntsum:t%5.2f,sum); printf(nntreceive:t); scanf(%f,&

14、receive); change=receive-sum;printf(ntchange:t%5.2f,change); fp3=fopen(d.txt,a); fprintf(fp3,nt%5.2fnt%5.2fnt%5.2f,sum,receive,change); fclose(fp3); fp=fopen(a.txt,w); for(i=0;in;i+) fprintf(fp,%dt%st%dt%dn,goodsi.num,goodsi.name,goodsi.price,goodsi.amount); fclose(fp); fp1=fopen(b.txt,w); fprintf(f

15、p1,%dt%d,n,n1); fclose(fp1); gotoxy(10,20); for(i=0;i20;i+) printf(* );gotoxy(16,22);printf(Press any key to exit);getch(); 3.5 receipt函数/*客户回单信息*/receipt_m()int i,No,j; float change,receive,sum; clrscr();gotoxy(10,5); for(i=0;i20;i+) printf(* ); fp1=fopen(b.txt,r); fscanf(fp1,%d%d,&n,&n1); fclose(f

16、p1); if( fp3=fopen(d.txt,r)!=NULL) for(i=0;in1;i+) fscanf(fp3,%dt%dt%ft%ft%f,&goodsNo.num,&j,&sum,&receive,&change); for(i=0;in1;i+) printf(ntNo:t%dntamount:t%dntsum:t%5.2fntreceive:%5.2fntchange:t%5.2fn,goodsNo.num,j,sum,receive,change); fclose(fp3); else printf(errorn);gotoxy(10,20); for(i=0;i20;i

17、+) printf(* ); gotoxy(16,22);printf(Press any key to exit);getch(); 3.6 input函数/*库存信息更新*/input_s()int i,f,j=0; clrscr(); printf(tthis is the goods stock,please add the goods messagen); printf(num:name:price:amount:n); fp1=fopen(b.txt,r); fscanf(fp1,%d%d,&n,&n1); fp=fopen(a.txt,a); for(i=0;i+,j+) sca

18、nf(%d%s%d%d,&goodsi.num,goodsi.name,&goodsi.price,&goodsi.amount); n+; fp1=fopen(b.txt,w); fprintf(fp1,%dt%d,n,n1); fclose(fp1); printf(ncontinue?(y/n);f=getch(); if(f=n) break; for(i=0;i=j;i+) fprintf(fp,%dt%st%dt%dn,goodsi.num,goodsi.name,goodsi.price,goodsi.amount); fclose(fp); gotoxy(16,20);prin

19、tf(press any key to break);getch();3.7 sell函数/*显示最近销售信息*/sell_m() int i,j,No; clrscr();gotoxy(10,5); for(i=0;i20;i+) printf(* );printf(ntsalesperson_numtnumtnametpricetsell_numn); fp1=fopen(b.txt,r); fscanf(fp1,%d%d,&n,&n1); fclose(fp1); if( fp2=fopen(c.txt,r)!=NULL) for(i=0;in1;i+) fscanf(fp2,%st%d

20、t%st%dt%dn,salesperson_num,&goodsNo.num,goodsNo.name,&goodsNo.price,&j); for(i=0;in1;i+) printf(t%stt%dt%st%dt%dn,salesperson_num,goodsNo.num,goodsNo.name,goodsNo.price,j); fclose(fp2); else printf(errorn);gotoxy(10,20); for(i=0;i20;i+) printf(* ); gotoxy(16,22);printf(Press any key to exit);getch()

21、;3.8 display函数/*显示最近销售的库存信息*/disp()int i; clrscr();gotoxy(10,5); for(i=0;i20;i+) printf(* );printf(ntinput the warehouse filenamen);gotoxy(10,7);scanf(%s,xname);printf(tNo.tnametpricetamountn); fp1=fopen(b.txt,r); fscanf(fp1,%d,&n); if( fp=fopen(xname,r)!=NULL) for(i=0;in;i+) fscanf(fp,%d%s%d%d,&goo

22、dsi.num,goodsi.name,&goodsi.price,&goodsi.amount); for(i=0;in;i+) printf(t%dt%st%dt%dn,goodsi.num,goodsi.name,goodsi.price,goodsi.amount); fclose(fp); else printf(errorn);gotoxy(10,20); for(i=0;i20;i+) printf(* ); gotoxy(16,22);printf(Press any key to exit);getch();4 系统运行(这部分介绍程序运行过程,系统操作使用的说明,使用测试数

23、据运行的结果,可将运行结果截图进行说明)密码登陆界面菜单页面销售系统显示界面销售记录商品信息添加销售信息记录信息库信息 5 总结本程序在刚开始调试时有很错误,但在我的努力及同学的帮助下都被一一克服,现在在操作本程序时可根据提示进行相关操作,能正确输出结果。在刚开始的几次调试中曾经出现过不能运行、不能产生函数的循环操作,如infor函数的循环,sell函数的循环等。服,并且使程序的功能也得到了一定的完善。现在它能对出错的商品号显示重新输入,给出正确销售额。在这次设计过程中,不仅复习课本上所学知识,还通过查资料、问同学学到了课本上没有的知识。从而启发我,要想写好程序,在写好课本知识的同时还需要多读和专业有关的一些书籍,同时还需要多动脑子,尽量把所学的知识综合起来应用,力争写出完美的程序。除此之外,我还得到了一些有用的教训:写程序时必须要细心,不能输错一个字符标点,就连全角半角也得注意。在修改时要有耐心,编译出错后必须逐个错误去改正,绝不能心急浮躁,否则修改之后还会有新的错误。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 单元课程

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁