C++产品管理系统-课程设计设计报告.docx

上传人:牧羊曲112 文档编号:1774037 上传时间:2022-12-18 格式:DOCX 页数:26 大小:248.34KB
返回 下载 相关 举报
C++产品管理系统-课程设计设计报告.docx_第1页
第1页 / 共26页
C++产品管理系统-课程设计设计报告.docx_第2页
第2页 / 共26页
C++产品管理系统-课程设计设计报告.docx_第3页
第3页 / 共26页
C++产品管理系统-课程设计设计报告.docx_第4页
第4页 / 共26页
C++产品管理系统-课程设计设计报告.docx_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《C++产品管理系统-课程设计设计报告.docx》由会员分享,可在线阅读,更多相关《C++产品管理系统-课程设计设计报告.docx(26页珍藏版)》请在三一办公上搜索。

1、 学 院课程设计说明书题目设计一个简单的产品管理系统系(部)计算机科学与技术专业(班级)姓名学号指导教师起止日期2010年1月4日-2010年1月8日程序设计基础课程设计任务书系_计算机科学与技术_专业_计算机科学与技术_班级_ _设计人_一、题目:设计一个简单的产品管理系统二、目的与要求1 目的:通过产品管理系统的设计,培养学生综合利用C+语言进行程序设计的能力,加强函数的运用及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力,培养学生利用系统提供的标准函数及典型算法进行设计。2 基本要求:(1)要求用C+模块化设计的思想来完成程序的设计;(2)要求使用结构数

2、组和结构指针,各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,要求使用头文件;(3)要求使用选择法排序,折半查找法进行查找。3 创新要求在基本要求达到后,进行创新设计,如进行删除或插入操作。4 书写设计报告的要求设计报告中包含以下几个方面:1、 设计题目2、 总体设计1) 用自顶而下或自底而上的方法,划分功能模块。2) 确定各模块的算法3、 根据算法画出流程图4、 列出程序清单,并加以必要的注释5、 写出调试程序的方法6、 指出所设计问题的不足和改进方案5 课程设计材料的装订顺序为:1) 设计说明书封面2) 课程设计任务书3) 课程设计鉴定表4) 目录5) 设计报告

3、书正文三、设计方法和基本原理1 问题描述:某工厂有5种产品,每种产品包括:产品代码,产品名称,产品数量,销售量,要求编写函数实现下面:(1) 从键盘输入这些产品的信息;(2) 按照产品的库存量进行升序排序,使用选择法排序,在主函数中输出;(3) 使用折半查找法进行循环查询,当用户给出某种产品的代码时,在主函数中显示该产品的信息,如果没找到则给出未找到的信息,退出程序的运行;(4) 输出产品信息。2 问题的解决方案:根据问题的描述,可以按照程序要求的功能采用结构化的设计思想。(1) 产品的库存量在输入函数中求解或者编写独立函数求解;(2) 在排序过程中,结构数组元素的交换可以整体进行,无需每个成

4、员之间进行互换。(3) 使用折半查找法进行查找之前,应该先按照产品代码进行排序。四、主要技术问题的描述根据三的分析,主要问题在于:(1)结构体的构造除了产品的代码(int code)、产品名称(char name) ,产品数量(float amount) ,销售量(float sales)外,还应有产品的库存量(float stock)(2)排序在进行完结构数组中某个成员的比较后,不是某个成员的互换,而是结构体数组元素之间的互换。例如结构体数组元素proj和prok的互换:t=proj; proj=proj+1; proj+1=t;(3)各个函数的参数传递问题实参应为结构数组名,形参为结构体指

5、针或者结构体数组。如输入函数:void Input(PRODUCT *p) /结构体指针作为形参/program code函数调用时:Input(pro); / pro 为结构体数组名五、课程设计时间:18周六、课程设计的考核方式及评分方法1考核方式课程设计结束时,在机房当场验收。1) 教师提供测试数据,检查运行结果是否正确。2) 回答教师提出的问题。3) 学生提交课程设计文档(A4纸打印)2评分方法上机检查 :书面报告=7 :3,没有通过上机检查的其成绩直接记录不及格指导教师签名:日期:教研室主任签名: 日期:系主任签名: 日期:长沙学院课程设计鉴定表 姓名 学号 专业 计算机科学与技术 班

6、级设计题目设计一个简单的产品管理系统指导教师指导教师意见:评定等级: 教师签名: 日期: 答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期: 系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“及格”、“不及格”四类;摘要用C+模块化设计的思想来完成该简单的产品管理系统程序的设计,使用结构数组和结构指针,各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,使用了头文件,并使用选择法排序,折半查找法进行查找。关键词:产品管理系统;模块化设计;结构数组;结构指针;选择法排序;折半查找法。目录1 设计内容与要求 12.设计说

7、明 2 2.1 问题描述与功能设计2 2.2 算法与数据结构4 2.3 函数定义6 2.4 界面设计9 2.5 编码12 2.6 测试213 总结23参考文献 25附录A 源代码261设计内容与要求设计一个简单的产品管理系统:某工厂有5种产品,每种产品包括:产品代码,产品名称,产品数量,销售量,要求编写函数实现下面:(1)从键盘输入这些产品的信息;(2)按照产品的库存量进行升序排序,使用选择法排序,在主函数中输出;(3)使用折半查找法进行循环查询,当用户给出某种产品的代码时,在主函数中显示该产品的信息,如果没找到则给出未找到的信息,退出程序的运行;(4)输出产品信息。基本要求:(1)要求用C+

8、模块化设计的思想来完成程序的设计;(2)要求使用结构数组和结构指针,各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,要求使用头文件;(3)要求使用选择法排序,折半查找法进行查找。创新要求:在基本要求达到后,进行创新设计,如进行删除或插入操作。2.设计说明2.1 问题描述与功能设计2.1.1 问题描述:问题描述:某工厂有5种产品,每种产品包括:产品代码,产品名称,产品数量,销售量,要求编写函数实现下面:( 1 ) 从键盘输入这些产品的信息;( 2 )按照产品的库存量进行升序排序,使用选择法排序,在主函数中输出;使用折半查找法进行循环查询,当用户给出某种产品的代码时,在

9、主函数中显示该产品的信息,( 3 )如果没找到则给出未找到的信息,退出程序的运行;( 4 )输出产品信息。主要问题在于:(1)结构体的构造 除了产品的代码(int code)、产品名称(char name) ,产品数量(float amount) ,销售量(float sales) 外,还应有产品的库存量(float stock) (2)排序在进行完结构数组中某个成员的比较后,不是某个成员的互换,而是结构体数组元素之间的互换。例如结构体数组元素proj和prok的互换:t=proj; proj=proj+1; proj+1=t;(3)各个函数的参数传递问题实参应为结构数组名,形参为结构体指针或

10、者结构体数组。如输入函数:void Input(PRODUCT *p) /结构体指针作为形参/program code函数调用时:Input(pro); / pro 为结构体数组名2.1.2功能设计:根据问题描述和设计要求,设计如下的功能:产品信息的输入、全部产品信息的查看、单个产品信息的按代码查看、单个产品信息的修改。2.2 算法与数据结构2.2.1 算法主函数 产品信息输入产品库存量升序排列产品代码查找修改已输入产品信2.2.2数据结构本程序采用的数据结构为:struct product int code; char name10; float amount; float sales; f

11、loat stock; pro5;2.3 函数定义我设计该程序一共定义了三个函数,分别为:产品输入,产品库存量升序排列,产品代码查找,修改已输入产品信息,主界面。函数名分别为: void input() void sort()void search() void reput()void desktop()2.4 界面设计本程序界面设计为2.5 编码system(pause); system(cls);在我写的程序中运用了上面的语句,这个语句在程序中大量运用,使得界面清晰明了,更加美观。system(pause) 用来暂停系统工作system(cls) 用来清除屏幕 2.6 测试建立产品信息:产

12、品代码产品名称产品数量产品销售量101沙发5622102椅子8948103餐桌4623104柜子3321105书桌126查看全部产品信息:查找产品信息: 查找代码为103的餐桌.修改产品信息: 修改 代码:105名称:书桌 为: 代码:205 名称:书桌 产品数量:23 销售量:123 总结通过本次课程设计,使得本学期来我学到的的知识得到了一次综合的应用。实验了从理论到实践的飞跃。本次课程设计中,我要用C+知识设计的是一个简单产品信息管理系统。要求用C+模块化设计的思想来完成程序的设计,并使用结构数组和结构指针,各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,要使用

13、头文件。在查看产品信息时要求使用选择法排序,折半查找法进行查找。在输入产品信息时,为解决产品代码重复输入的问题,通过与同学的交流,采用了通过字符比较的方法排除。在查看产品信息时要求使用折半查找法进行查找,在输入错误代码时,总造成系统死机,也是在同学的帮助下找到了问题所在。这些都令我十分高兴。在一系列的数据测试后,该程序能基本顺利运行,但不排除还存在一些问题。比如:在输入产品代码时,如果输入数据不为整数类型时,会造成程序错误。总之,通过本次课程设计,是我使用C+语言编程的综合能力得到了提高。 参考文献1 王挺、周会平、贾丽丽、徐锡山. C+程序设计M. 北京:清华大学出版社,2005:138-2

14、21.2 刘瑞新. Visual C+面向对象程序设计教程M. 北京:机械工业出版社,2005.附录A 源代码Main.cpp#include#include#includefunction.hint main()int n;do desktop();cinn;system(cls);if(n=1)input();else if(n=2)sort();else if(n=3) search();else if(n=4) reput();while(n!=0);return 0; Function.h#include#includestruct product int code; char na

15、me10; float amount; float sales; float stock;pro5;/产品输入void input() for(int i=0;i5;i+) cout请输入第i+1proi.code;cout请输入第i+1proi.name;cout请输入第i+1proi.amount;cout请输入第i+1proi.sales; proi.stock=proi.amount-proi.sales; system(cls); /产品库存量升序排列void sort()product temp;for(int i=0;i5-1;i+)for(int j=i+1;jproj.sto

16、ck)temp=proi;proi=proj;proj=temp;for(int j=0;j=5-1;j+)cout库存量排第j+1种产品的库存是proj.stockendl;cout代码是proj.codeendl;cout名称是proj.nameendl;cout数量是proj.amountendl;cout销售量是proj.salesendlendl;system(pause);system(cls);/产品代码查找void search() int code5=1,2,3,4,5; bool flag=0; int b; coutb; for(int i=0;i5;+i) if(b=p

17、roi.code) flag=1; cout产品代码:proi.code 名称:proi.name 数量:proi.amount 销售量:proi.salesendl; if(flag=0) cout此代码不存在!endl; system(pause); system(cls); /修改已输入产品信息void reput()int code;cout已输入产品代码分别是:endl;for(int k=0;k=5-1;k+)coutprok.codeendl;cout您要修改的产品代码是多少?code;for(int i=0;i=4;i+)if (proi.code=code)break;if(

18、i=5)cout没有您要修改的产品endl;elsecout请输入您要修改的产品的代码proi.code; cout请输入您要修改的产品的名字proi.name;cout请输入您要修改的产品的数量proi.amount; cout请输入您要修改的产品的销售量proi.sales;proi.stock=proi.amount-proi.sales;system(pause); system(cls);/+desktop+void desktop()coutendl;cout*欢迎进入产品管理系统*endl * 请选择您要的服务 *endl * 1.输入产品信息 *endl * 2.查看产品信息 *endl * 3.查找产品信息 *endl * 4.修改产品信息 *endl * 0.退出系统 *endl *endl;coutendl;cout请输入相应的代码:;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号