cC语言物品管理-设计报告(共46页).doc





《cC语言物品管理-设计报告(共46页).doc》由会员分享,可在线阅读,更多相关《cC语言物品管理-设计报告(共46页).doc(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上学号2016-2017学年 第2学期C语言物品管理课程设计报告题目:C语言物品管理专业:网络工程班级:16级(3)班姓名:代应豪指导教师:代美丽成绩: 计算机学院 2017 年 4月 27 日专心-专注-专业 目录1设计内容及要求.21.1概述.21.2主要功能.21.3设计目的及具体要求.22概要设计.22.1系统的功能简介.22.2总体程序框图.32.3各个模块之间的主要关系.33设计过程及程序代码.33.1定义结构体及宏定义.43.2主函数main().43.3输入物品信息函数.53.4输出显示物品函数.53.5将物品写入磁盘.63.6插入物品记录函数.73.7
2、删除一个物品记录函数.73.8按照物品编号进行递增排序函数.83.9按照物品总价进行递增排序函数.83.10对物品记录进行排序函数.93.11输出头部信息函数.103.12输出一条物品信息函数.103.13判断该编号物品是否存在函数.103.14根据物品编号进行查找函数.103.15根据物品名字进行查找函数.103.16对物品记录进行查找函数.114设计结果与分析.124.1各个模块的程序流程图.121) 主函数程序(N-S)流程图及运行界面.122) 输入物品记录信息的(N-S)流程图及程序运行界面.135设计心得.216参考文献.227源程序代码(物品管理系统).231. 设计内容及要求1
3、.1概述 物品管理系统主要根据课程设计要求进行设计,从对物品的简单处理着手设计一份物品管理系统。1.2主要功能物品管理系统是一个针对物品管理的系统。该系统功能主要包括八大模块: 1)插入物品记录:输入物品个数,根据物品个数依次输入每个物品记录的详细信息。例如物品编号、名字、单价、数量。 2)输出物品记录:对已经写入磁盘的记录信息的显示。如无数据,则显示无数据!3) 将物品记录写入文件。4) 插入一个物品记录。5) 删除一个物品记录。6) 对物品记录进行排序。7) 对物品记录进行查找。8) 退出系统。1.3设计目的及具体要求主要利用C语言的文件操作能力设计开发一个小型的信息系统,至少具有如下功能
4、:物品的读和写、物品信息的增删改、物品信息的排序、查找。操作界面要符合用户的一般习惯,图形或文本界面都可以。要求:系统以菜单方式工作,根据菜单项序号提示进行工作。物品信息包括编号看、名称、单价、数量、总价。系统以菜单方式工作,实现对物品信息的录入、修改、统计、排序、查询、输出等功能。2概要设计2.1系统的功能简介该系统的主要功能是系统以菜单方式工作,实现对物品信息的录入,修改,统计,排序,查询,输出等功能。2.2总体程序框图物品管理系统操作主要流程如下,各个函数分别实现不一样的功能。2.3各个模块之间的主要关系该程序的功能主要是实现物品信息的录入,并对物品的相应信息进行进本的增删该的计算。各个
5、模块之间的关系是相互联系的。首先,主函数包含了所有的子函数。主函数是整个程序的核心。子函数之间也是有联系的,对物品读取,插入删除,检索排序必须是在主函数的情况下进行的。因此在第一步选择菜单项是非常重要的。第一步菜单项的选择决定用户所要实现的操作功能。3设计过程及程序代码整个系统除了主函数外,另外还有8个函数,实现7人功能:输入功能、输出功能、写入磁盘功能、插入并显示功能、分类查找并显示功能、分类排序并显示功能。各个函数的详细设计说明分别如下:3.1定义结构体及宏定义#include stdio.h#include string.h #define NAME_MAX_LEN 20 #define
6、 Prod_MAX_NUM 50typedef struct int num; char nameNAME_MAX_LEN;double unitprice; int amount; double totalprice; prodNode; typedef struct sequenceprodNode dataProd_MAX_NUM; int len; seq; seq product;3.2主函数main()void main() int menuItemCode=1; product.len=0; while (menuItemCode!=0)printf(nn); printf(*物
7、品管理系统*n); printf(* 1.输入物品记录 *n); printf(* 2.输出物品记录 *n); printf(* 3.将物品记录写入文件 *n);printf(* 4.插入一个物品记录 *n); printf(* 5.删除一个物品记录 *n);printf(* 6.对物品记录进行排序 *n); printf(* 7.对物品记录进行查找 *n); printf(* 0.退出系统 *n); printf(*n); printf(请输入所选项菜单项序号:); scanf(%d,&menuItemCode); switch (menuItemCode)case 1:inputGoods
8、(); break; case 2:outputGoods(); break; case 3:saveGoods(); break; case 4:insertOneGoods(); break;case 5:deleteOneGoods(); break; case 6:sortGoods(); break; case 7:searchGoods(); break; case 0:break; default:printf(输入超出范围!n); break;3.3输入物品信息函数void inputGoods() int i,n; printf(请输入物品个数:n); scanf(%d,&n
9、); if (n0) return; for (i=0;in;i+)printf(输入物品的编号:n); scanf(%d,&product.datai.num); printf(输入物品的名字:n); scanf(%s,product.datai.name); printf(输入物品的单价:n); scanf(%lf,&product.datai.unitprice); printf(输入物品的数量:n); scanf(%d,&product.datai.amount); product.datai.totalprice=product.datai.unitprice*product.dat
10、ai.amount;product.len=n;3.4输出显示物品函数void outputGoods() int i; if (product.len=0) printf(n无数据!n); return; printf(n物品的记录为:n); printf(编号t名字t单价 t数量t总价n);for (i=0;iproduct.len;i+)printf(%dt%st%lft%dt%.2lf,product.datai.num,product.datai.name,product.datai.unitprice,product.datai.amount,product.datai.total
11、price); printf(n); 3.5将物品写入磁盘void saveGoods() int i; FILE *fp; if (product.len=0) printf(n无数据!n);return;fp=fopen(D:goods.txt,w); if (fp=NULL)printf(文件打开失败!n); return;fprintf(fp,%st,编号); fprintf(fp,%st,名称); fprintf(fp,%st ,单价); fprintf(fp,%st,数量);fprintf(fp,%s,总价); for (i=0;iproduct.len;i+) fprintf(f
12、p,n); fprintf(fp,%dt,product.datai.num); fprintf(fp,%st,product.datai.name); fprintf(fp,%lft,product.datai.unitprice); fprintf(fp,%dt,product.datai.amount); fprintf(fp,%.2lf,product.datai.totalprice); fclose(fp); printf(已成功存盘!n);3.6插入物品记录函数void insertOneGoods() prodNode G; int i,pos; if(product.len=
13、Prod_MAX_NUM) printf(表已满!n); return;printf(请输入插入位置:); scanf(%d,&pos); if (posproduct.len) printf(插入位置出错!n);return;printf(请输入要插入的物品记录:n); printf(请输入编号:); do scanf(%d,&G.num); if (G.num=0) printf(输入的编号不合理,请重新输入。n); while (G.num=pos;i-)product.datai+1=product.datai; product.datapos=G; product.len=produ
14、ct.len+1; printf(插入成功!);3.7删除一个物品记录函数void deleteOneGoods() int i,pos; if (product.len=0)printf(表空!n); return;printf(请输入要删除的物品记录的位置:); scanf(%d,&pos); if (posproduct.len-1) printf(删除的位置出错!n); return; for(i=pos+1;i=product.len-1;i+) product.datai-1=product.datai;product.len=product.len-1; printf(删除成功!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- cC 语言 物品 管理 设计 报告 46

限制150内