超市商品管理系统(共27页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《超市商品管理系统(共27页).doc》由会员分享,可在线阅读,更多相关《超市商品管理系统(共27页).doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上超市商品管理系统(含附源代码)黔南民族师范学院 软件设计课程设计报告 题 目: 超市商品管理系统 系部名称 : 专业名称 : 班 级 : 学号 : 计科系 信息管理与信息系统 B12计信班 胡崇祯 黄茹 2013年11月9日 至2013年 12月8日 学生姓名 : 指导教师 : 时间 : 一、 课程设计目的 1. 通过本课程设计,强化上机动手能力,使学生在理论和实践的基础上进一步巩固C语言程序设计课程学习的学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。 3. 为后续各门计算机课程的学习打下坚实基础。 4. 为毕业设计和以后工作打下必要基础。 二、
2、课程设计编写程序并进行调试运行。 2. 输入商品信息,并保存于文件。每个商品信息包含信息如:库存量、进价、售价、保质期、生产商等。 3. 对已存入的商品信息进行更新操作,包括添加一个商品信息、删除某个商品信息和修改某个商品信息。 4. 通过输入商品名、商品号、商品类型的方式查询商品信息。 5. 最后输出商品信息,供需要时打印。 三、需求分析 1. 该程序可用于对商品基本信息的存储、更新、查询、排序、输出等操作,以实现对商品信息的管理。 2. 其中更新功能包括:添加信息、删除信息、修改信息、可根据需要添加一个或多个商品信息,也可对个别商品信息进行适当的删除或修改。以便随时更新商品信息。 3. 程
3、序中设计的查询功能可根据需要从若干数据中查询某个商品信息,并且可根据三种不同的方法查询:按商品号查询、按商品类型和按商品查询,以满足不同的需要。 四、概要设计 1、 方案设计 对系统进行分析,给出结构图 系统要求实现许多的功能,因此遵循结构化程序设计思想来进行本系统 分析:的设计自顶向下、逐步细化,将系统设计任务分解出许多子功能模块进行设计 结构图如下: 2、模块功能说明(对各个模块进行功能的描述) (1)(输入模块:录入需要管理的商品信息并将信息保存于文件中,以方便日后进 行打印、读取、更新等操作。 (2)(添加模块:可添加一个或多个商品信息,并将所添加商品信息保存,方便查找。 (3)(删除
4、模块:可对售完的商品信息做删除处理。 (4)(修改模块:可根据需要对多个商品信息进行修改,也可随时对个别项进行修改。 (5)(查询模块:可对已建立的商品信息进行查询,并且可根据需要选择按商品名查询或按商品号查询。 (6)(保存模块:用于对信息进行保存。 (7)(输出模块:将所有商品信息或想要查询的商品信息显示于屏幕,用于打印商品信息或查找某些商品信息。 (8)(退出系统:选择该项,自动退出该系统。 输入模块: 输出模块: 排行模块: 六、调试情况,设计技巧及体会 1、对自己设计进行评价,指出合理和不足之处,提出改进的方案。 此次实践课编写的是一个应用程序,相对于以前我们见到的程序,它要大得多,
5、开始时,数据的输出格式不太规范,而且各模块也出现了一些小问题,在老师和同学的帮助下,通过自己一次又一次的进行调试和修改,最后运行的结果基本上达到了预期的目的。 由于时间问题和考虑得不够周全,可能在某些功能上不是很完善,不过已有的功能已能基本满足一般用户的需求,如果能通过不断的实验和使用过程中所积累的问题进行改进。如:数量,价格的输入值为负值时,程序也能继续执行,这就给运用上带来一些不便或可能出现一些莫名其妙的错误。 不过总的来说,对于自己首次能够自主完成一个这样大的程序来说,还是比较满意。 2、在设计过程中的感受。 本次C 语言的实习课让我对C 语言的学习又有了更深入的了解,也让我更深刻地领悟
6、到了“实践出真理”这个道理,在上机实践过程中学到的知识远远超过了在课堂上十几周学到的,学校组织的这次实习让我们这些实践知识较缺乏的大学生增添了许多实践经验,为我们将来走上工作岗位其了不小的铺垫作用。 本次实习中遇到了很多以前没有遇到过的问题,也曾想过要放弃,但看到自己一般写过的大量程序,给了我继续的信心。在老师和同学的帮助下,我顺利的完成了本次实习,让我体会到了经过不懈的努力,有过挫折有过坎坷,但最终实现目标后的成就感,也让我充分感受到友谊和团结的重要性。 七、参考文献 曹 锰 C语言程序设计 王曙燕八、附录: #include <stdio.h> #include <mat
7、h.h> #include <string.h>#include<conio.h> #include<stdio.h> #include<string.h> #define MAX 20 #define PRINT1 printf("-n") #define PRINT2 printf("商品号-商品名称-商品种类-销售价格-生产日期(年-月-日)-保质期n") #define PRINT3 printf("%4d%8s%8s%8d%8d-%2d-%2d%4dn",goodsi.n
8、um,goodsi.name,goodsi.kind,goodsi.out_price,goodsi.pro_time.year,goodsi.pro_time.month,goodsi.pro_time.day,goodsi.save_day) int sum; struct date int year; int month; int day; ; struct goods_type /*定义结构体*/ int num; char name10; char kind10; int amount; int in_price; int out_price; struct date pro_tim
9、e; int save_day; int profit; goodsMAX; Save_Message(int sum); /*函数声明*/ void Inquire_message(void); void Inquire_goodskind(void); void Inquire_goodsname(void); int Read_Message(void); void Renew_Messahe(void); void Revise_Message(void); void Delete_Message(void); void Insert_Message(); void Show_Mess
10、age(void); int Input_Message(void); void Count_Message(); long Count_Profit(); long Count_Amount(); void Sort_amount(void); void Sort_Message(void); void Sort_Message(void) int choice; do clrscr(); printf("nnn *商品信息排行*nn"); printf(" 1:按库存量排行nn"); printf(" 0:返回主菜单nn"); p
11、rintf(" 请选择(0-1): "); scanf("%d",&choice); switch(choice) case 1:Sort_amount();break; case 0:break; while(choice!=0); void Sort_amount(void) /*库存量排序*/ struct goods_type *p,*qMAX; int i,j,k; clrscr(); printf(" 库存排行"); PRINT1; printf("nn排名 商品号 商品名称 商品类别 库存量nn&quo
12、t;); p=goods; for(i=0;i<sum;i+) qi=p+; for(i=0;i<sum;i+) k=i; for(j=i+1;j<sum;j+) if(qk->amount<qj->amount) k=j; if(k!=i) p=qi; qi=qk; qk=p; for(i=0;i<sum;i+) printf(" %d ",i+1); printf(" %d ",qi->num); printf(" %s ",qi->name); printf(" %
13、s ",qi->kind); printf(" %d n ",qi->amount); bioskey(0); long Count_Amount() /*统计库存量*/ int i,j=0,choice,count_num,Amount; char inquire_name10; clrscr(); printf("n 请输入想要统计的商品号: "); scanf("%d",&count_num); for(i=0;i<sum;i+) if(goodsi.num=count_num) Amount
14、=goodsi.amount; printf("-"); printf(" 商品号 库存量"); printf("n%8d%8d",goodsi.num,Amount); else j+; if(j=sum) printf("该商品信息不存在!"); bioskey(0); long Count_Profit() /*统计利润模块*/ int i,choice,j=0,count_num,profit; clrscr(); printf("n 请输入想要统计的商品号: "); scanf(&qu
15、ot;%d",&count_num); for(i=0;i<sum;i+) if(goodsi.num=count_num) profit=goodsi.out_price-goodsi.in_price; printf("n 商品利润"); printf("n -"); printf("n 商品号 利润"); printf("n %8d%8dn",&goodsi.num,&profit); else j+; if(j=sum) printf("n 该商品不存在!&
16、quot;); printf("n 按任意键返回主菜单!"); bioskey(0); void Count_Message(void) /*统计模块*/ int choice; do clrscr(); printf("*统计商品信息*nnn"); printf("* 1:统计库存量 *nnn"); printf("* 2:统计利润 *nnn"); printf("* 0:返回主菜单 *nnn"); printf("* 请选择(0-2): *nnn"); scanf(&qu
17、ot;%d",&choice); switch(choice) case 1:Count_Amount();break; case 2:Count_Profit();break; case 0:break; while(choice!=0); int Input_Message(void) /*输入模块*/ int i=0,s=MAX; char bd; clrscr(); printf("开始输入商品信息.n"); printf("nn 商品信息:(最多 %d) n",s); printf(" =n"); do p
18、rintf("n 第 %d 商品",i+1); printf("n 商品号: "); scanf("%d",&goodsi.num); if(goodsi.num=0) break; printf("n 商品名称: "); scanf ("%s",goodsi.name); printf("n 商品种类: "); scanf ("%s",goodsi.kind); printf("n 商品库存量: "); scanf (&quo
19、t;%d",&goodsi.amount); printf("n 进货价格: "); scanf ("%d",&goodsi.in_price); printf("n 销售价格: "); scanf ("%d",&goodsi.out_price); printf("n 生产日期(yyyy-mm-dd): "); scanf ("%d-%d-%d",&goodsi.pro_time.year,&goodsi.pro_time.
20、month,&goodsi.pro_time.day); printf("n 保质期: "); scanf ("%d",&goodsi.save_day); printf("继续输入信息,y or n ?"); fflush(stdin); scanf("%c",&bd); if(bd=y?) i+; else break; while(i<MAX); printf("n-%d 所有商品录入完毕!-nnn",i+1); getch(); printf("
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 商品 管理 系统 27
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内