1、 课 程 设 计 说 明 书 题目 设计一个简单的产品管理系统 系(部) 物理与信息技术学院 专 业 ( 班 级 ) 电子科学与技术专业 程序设计基础课程设计任务书 一、题目:一、题目:设计一个简单的产品管理系统 二、目的与要求目的与要求 1 目的:目的: 通过产品管理系统的设计,培养学生综合利用 C+语言进行程序设计的能力,加强函数的运用 及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力,培 养学生利用系统提供的标准函数及典型算法进行设计。 2 基本要求:基本要求: (1)要求用 C+模块化设计的思想来完成程序的设计; (2)要求使用结构数组和结构指针,各个
2、功能分别使用函数来完成,主函数和各个函数分别 存放在不同的.cpp 文件中,要求使用头文件; (3)要求使用选择法排序,折半查找法进行查找。 3 3 创新要求创新要求 在基本要求达到后,进行创新设计,如进行删除或插入操作。 4 书书写写设计报告的要求设计报告的要求 设计报告中包含以下几个方面: 1、 设计题目 2、 总体设计 1) 用自顶而下或自底而上的方法,划分功能模块。 2) 确定各模块的算法 3、 根据算法画出流程图 4、 列出程序清单,并加以必要的注释 5、 写出调试程序的方法 6、 指出所设计问题的不足和改进方案 5 课课程设计材料的程设计材料的装订装订顺序为:顺序为: 1) 设计说
3、明书封面 2) 课程设计任务书 3) 课程设计鉴定表 4) 目录 5) 设计报告书正文 三三、设计方法和基本原理、设计方法和基本原理 1 问题描述:问题描述: 某工厂有 5 种产品,每种产品包括:产品代码,产品名称,产品数量,销售量,要求编写函数 实现下面: (1) 从键盘输入这些产品的信息; (2) 按照产品的库存量进行升序排序,使用选择法排序,在主函数中输出; (3) 使用折半查找法进行循环查询,当用户给出某种产品的代码时,在主函数中显示该产 品的信息,如果没找到则给出未找到的信息,退出程序的运行; (4) 输出产品信息。 2 问题的解决方案:问题的解决方案: 根据问题的描述,可以按照程序
4、要求的功能采用结构化的设计思想。 (1) 产品的库存量在输入函数中求解或者编写独立函数求解; (2) 在排序过程中,结构数组元素的交换可以整体进行,无需每个成员之间进行互换。 (3) 使用折半查找法进行查找之前,应该先按照产品代码进行排序。 四四、主要技术主要技术问题的描述问题的描述 根据三的分析,主要问题在于: (1)结构体的构造 除了产品的代码(int code) 、产品名称(char name) ,产品数量(float amount) ,销售量(float sales) 外,还应有产品的库存量(float stock) (2)排序 在进行完结构数组中某个成员的比较后,不是某个成员的互换,
5、而是结构体数组元素之间的互换。 例如结构体数组元素 proj和 prok的互换: t=proj; proj=proj+1; proj+1=t; (3)各个函数的参数传递问题 实参应为结构数组名,形参为结构体指针或者结构体数组。如输入函数: void Input(PRODUCT *p) /结构体指针作为形参 /program code 函数调用时:Input(pro); / pro 为结构体数组名 五五、课程设计时间:课程设计时间:18 周 六、课程六、课程设计的考核方式及评分方法设计的考核方式及评分方法 1 1考核方式考核方式 课程设计结束时,在机房当场验收。 1) 教师提供测试数据,检查运行
6、结果是否正确。 2) 回答教师提出的问题。 3) 学生提交课程设计文档(A4 纸打印) 2 2评分方法评分方法 上机检查 :书面报告=7 :3,没有通过上机检查的其成绩直接记录不及格 指导教师指导教师签名:签名: 日期:日期: 教研室主任教研室主任签名:签名: 日期:日期: 系主任签名:系主任签名: 日期:日期: 摘要摘要 用 C+模块化设计的思想来完成该简单的产品管理系统程序的设计,使用结构数组和结构指 针,各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp 文件中,使用了头 文件,并使用选择法排序,折半查找法进行查找。 关键词:关键词:产品管理系统;模块化设计;结构数组;结构指针;选择法排序;折半查找法。 目录目录 1 1 设计内容与要求设计内容与要求 1 2.2.设计说明设计说明