c语言程序设计_超_市_管_理_系_统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1实验题目:超市管理系统一、实验目的1.熟悉c语言的编译连接和运行过程。2.掌握c语言的数据类型,熟悉整型、实型、字符型变量的定义方式及如何给它们赋值。3.掌握if语句及switch语句的运用方法及嵌套应用方法。4.掌握实现循环结构的三种语句while、do-while.、for的使用。5.掌握函数的定义方法和调用方法。6.能够采用模块化思想调试程序。二.实验内容1.编写程序并进行调试运行。2.输入商品资料,并保存于文件。每件商品包含信息如:商品号、商品名、商品类别、商品总量、商品上限和下限、商品价格、进货日期、生产日期、保质期等。3.对已存入的商品信息进行更新操作,包括添加一件商品信息、删除某件商品信息和修改商品信息。4.通过按商品名、商品种类、商品进货量的方式查询商品信息。5.输入某商品号后对其利润进行统计、对进货价格相同的商品进行统计。6对商品的库存量和利润进行排序。7.最后输出商品信息,供需要时打印。二、需求分析1.该程序可用于对商品的基本信息的存储、更新、查询、输出、统计、排序等操作,以实现管理者对商品的管理和消费者对商品的了解。2.其中更新功能包括:添加信息、删除信息、修改信息、可根据需要添加一个或多件商品信息,也可对个别商品信息进行适当的删除或修改。以便随时更新商品信息。3.程序中设计的查询功能可根据需要从若干数据中查询某件商品信息,并且可根据三种不同的方法查询:按商品名查询、按商品种类查询和按商品进货量查询。以满足不同的需要。四、概要设计1、方案设计对系统进行分析,给出结构图分析:系统要求实现许多的功能,因此遵循结构化程序设计思想来进行本系统的设计—自顶向下、逐步细化,将系统设计任务分解出许多子功能模块进行设计结构图如下:2退出系统第一类商品第二类商品按商品名查询按进货量查询退出系统按商品种类查寻利润排行库存量排行退出系统第三类商品修改商品信息删除商品信息库存量排行添加商品信息退出系统超市管理管理系统管理者系统退出系统消费者管理系统更新模块输出信息录入信息统计模块排序模块查询模块退出系统退出系统排序模块询模块查询模块利润排行退出系统退出系统按商品名查询按商品种类查按进货量查询32.功能模块说明:对各个模块进行功能的描述(1).输入模块:录入需要管理的商品信息并将信息保存于文件中,以方便日后进行打印、读取、更新等操作。(2).添加模块:可添加一件或多件商品信息,并将所添加商品信息保存,方便查找。(3).删除模块:可对过期的商品做删除处理。(4).修改模块:可根据需要对多件商品信息进行修改,也可随时对个别项进行修改。(5).查询模块:可对已建立的商品信息进行查询,并且可根据需要选择按商品名查询或按商品种类查询或按商品进货量查询。(6).保存模块:用于对信息进行保存。(7).输出模块:将所有商品信息或想要查询的商品信息显示于屏幕,用于打印商品信息或查找某些商品信息。(8)排序模块:根据商品的利润和进货量进行排序。(9)统计模块:统计商品的利润和对进货价格相同的商品进行统计。(10).退出系统:选择该项,自动退出该系统。五、详细设计及运行结果流程图,函数之间相互调用的图示,程序设计及编码,运行结果。4输入i值判断i值退出系统输出模块输入模块更新模块统计模块输入更新值输入查询值开始排序模块管理者系统消费者系统退出系统查询模块查询模块排序模块退出系统输入排序值输入统计值输入查询值输入排序值添加信息删除信息修改信息退出系统利润排序库存排序退出系统二类商品一类商品按名查询按种类查按进货量退出系统退出系统退出系统按进货量按名查询按种类查退出系统利润排序库存排序三类商品5六.调试情况及运行结果1、对自己设计进行评价,指出合理和不足之处,提出改进的方案。此次实践课编写的是一个应用程序,相对于以前我们见到的程序,它要大得多,于是就按课本上的例子编了超市管理系统,先把界面弄好然后再添加各模块,而且各模块也出现了不少问题,在同学们和老师的帮助下,我很有耐心的一次又一次的进行修改,最后运行的结果基本上达到了预期的目的。可结果还不是太理想。由于时间很短,在选题报告中设想到的好多功能都没有实现。已有的那些功能虽已能基本上满足管理者和消费者的需要,但如果还有更多的功能程序就会更加完美。如:进入系统时没有设制密码,保护性不够强;在输入商品号时没有出错提示,如果商品号输入负值2、在设计过程中的感受。本次C语言的实习课让我对C语言的学习又有了更深入的了解,也让我更深刻地领悟到了“实践出真理”这个道理,在上机实践过程中学到的知识远远超过了在课堂上十几周学到的,学校组织的这次实习让我们这些实践知识匮乏的大学生增添了许多社会经验,为我们将来走上工作岗位其了不小的铺垫作用。本次实习中遇到了很多以前没有遇到过的问题,也曾想过要放弃,但看到那些同学都在那认真的写程序,给了我继续的信心。在同学的帮助下,我顺利的结束了本次实习,让我知道原来凭借自己努力取得的成功会让自己这么欣慰,也让我知道了友谊和团结的重要性。七.参考文献《C语言程序设计》王曙燕曹锰科学出版社八。附录:#includestdio.h#includestring.h#defineMAX3#defineN3#definePAGE2#definePRINTF1printf(---------------------------------------------------------------------\n)#definePRINTF2printf(num----name----kind----out_price----pro_time(year-month-day)----save_time\n);#definePRINTF3printf(%d%8s%7s%8d%5d-%2d-%2d%10d\n,goods[i].num,goods[i].name,goods[i].kind,goods[i].out_price,goods[i].pro_time.year,goods[i].pro_time.month,goods[i].pro_time.day,goods[i].save_day);intsum;/*datastructkind*/6structdata{intyear;intmonth;intday;};/*goodsstructkind*/structgoods{intnum;charname[10];charkind[10];intamount;intgoods_up;intgoods_down;intin_price;intout_price;intin_num;structdatain_time;structdatapro_time;charfactory[10];intsave_day;floatprofit;}goods[MAX];/*savemessage*/save_message(intsum){FILE*fp;inti;if((fp=fopen(goods.txt,wb))==NULL){printf(readthefileerror!\n);return;}for(i=0;isum;i++)if(fwrite(&goods[i],sizeof(structgoods),1,fp)!=1)printf(writethefileerror!\n);fclose(fp);}7/*inputmessage*/input_message(){inti=0,s=MAX;system(cls);printf(\n\ninputgoodsmessagethemost%d\n\n,s);do{printf(\ndi%dgoods,i+1);printf(\nnum:);scanf(%d,&goods[i].num);if(goods[i].num==0)break;printf(\nname:);scanf(%s,goods[i].name);printf(\nkind:);scanf(%s,goods[i].kind);printf(\namount:);scanf(%d,&goods[i].amount);printf(\ngoods_up:);scanf(%d,&goods[i].goods_up);printf(\ngoods_down:);scanf(%d,&goods[i].goods_down);printf(\nin_price:);scanf(%d,&goods[i].in_price);printf(\nout_price:);fflush(stdin);scanf(%d,&goods[i].out_price);printf(\nin_num:);scanf(%d,&goods[i].in_num);printf(\nin_time:);scanf(%d-%d-%d,&goods[i].in_time.year,&goods[i].in_time.month,&goods[i].in_time.day);printf(\npro_time:);scanf(%d-%d-%d,&goods[i].pro_time.year,&goods[i].pro_time.month,&goods[i].pro_time.day);printf(\nfactory:);scanf(%s,goods[i].factory);printf(\nsave_time:);scanf(%d,&goods[i].save_day);i++;}while(iMAX);8printf(\n*****%dgoodsmessageinputover!--\n,i);sum=i;printf(\npressanykeytoreturn!);bioskey(0);}/*readmessage*/intread_message(){FILE*fp;inti=0;if((fp=fopen(goods.txt,rb))==NULL){printf(\n\n******thereisnoanymessage,pressanykeytoreturn!******\n);return;}while(feof(fp)!=1){fread(&goods[i],sizeof(structgoods),1,fp);if(goods[i].num==0)break;elsei++;}fclose(fp);return(i);}/*outputmessage*/output_message(){inti=0,j=0,count,page=1;system(cls);printf(\n\n--goodsmessage,di%dpage\n\n,page);PRINTF2;PRINTF1;do{if(goods[i].num!=0){j++;if(j%PAGE!=0){PRINTF3;PRINTF1;9}else{PRINTF3;PRINTF1;if(goods[i+1].num!=0){printf(pressanykeytoreturn!);getch();system(cls);printf(\n\n--goodsmessage,di%dpage\n\n,++page);PRINTF2;PRINTF1;}}}i++;}while(isum);printf(pressanykeyreturn!);bioskey(0);}/*insertgoodsmessage*/insert_message(){inti=sum,j,flag=0;charchoice;system(cls);printf(\n\ninsertanewgoods\n);printf(----------------------\n);do{goods[i].num=++sum;printf(\nnewnum:);scanf(%d,&goods[i].num);printf(\nnewname:);scanf(%s,goods[i].

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功