《高级语言程序设计》课程设计报告(1)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
以下为in_or_out类所用的链表操作:
《高级语言程序设计》课程设计报告
题目:
班级:XXXXXXXXXXXXXXX
学生学号:XXXXXXXXXXX
学生姓名:XXXXXXX
同组成员:
指导老师:XXXXXX
提交时间:2009年5月10日
成绩:
一、需求分析
1、系统概述:
仓储是现代物流的核心环节之一,仓库管理在整个供应链管理当中占有重要的地位。采用计算机来管理仓库信息,可避免传统仓库管理手工操作的不足之处,尤其在信息查询方面有显著地优势。本系统是......
char t[50]; //记录时间
char agent[Length]; //采购员或提货员
struct in_or_out *under;//指向下一个in_or_out节点
};
struct good *head = new struct good; //外部定义链表头节点,头节点不记录任何信息
};
struct in_or_out {
int div; //用于出库
char reason[Length]; //出库原因
int in ; //判断是出库还是入库,出库为0,入库为1
int add; //用于入库
char provider[Length]; //提供商
float price; //单价,直接传入文件
stLeabharlann Baiduuct good {
int id;//物品编号
char name[Length]; //物品名称
int warn; //警戒库存量
long total; //总数,每次入库时累加,每次出库时累减
struct good *next;//指向下一个good节点
struct in_or_out *under; //指向io_or_out节点
(3)链表模块:链表是动态数据结构,由于链表的动态添加和删除的操作十分方便,因此,链表为程序运行时记录数据和数据管理的重要环节。
(4)桌面模块:提供方便用户使用软甲的界面。
(5)文件模块:程序开始运行时刷新链表数据,程序结束运行时记录数据。
2、主要函数:函数名及参数含义;
(1)链表模块主要函数:
void init(struct good *node); //node为good类刚被分配内存的节点,函数初始化node
(9)出入库记录查询:
输入界面:
输出界面:
5、数据结构设计:
系统程序中主要定义了“good”(即物品)和“in_or_out”(即入库出库)两个结构体。其中,good结构体是主链表节点的类型,以记录物品的编号、名称、总量和警戒库存量等信息。并且,在good结构体中还定义了一个指向io_or_out结构体的指针,使得good结构体中的每一个节点都可以引申出一条以io_or_out结构体为节点类型的链表;io_or_out结构体是从每个good结构体类型的节点中引申出来的分链表的节点类型,用于存放一个物品的一次出库或入库操作所需记录的信息,包括:判断是出库还是入库、入库数量、提供商、单价、出库数量、出库原因、出入库操作的时间、采购员或提货员姓名等。以下是程序源代码中对这两个结构体的定义:
(3)出入库管理模块:......
(4)安全设置模块:......
(5)帮助模块:......
二、总体设计
1、总体开发思想:
(1)采用的主要数据结构:
系统对数据操作的主要数据结构是一个二维链表(如图),主链表的每个节点都作为头节点引申出一个分链表。good结构体是主链表节点的类型,io_or_out结构体是分链表节点的类型。
bool del_good(int iD); //iD为指定的物品编号,在链表中删除有该编号的物品,成功返回1,失败返回0
bool del_good(char *nm);//nm为指定的物品名称,在链表中删除有该名称的物品,成功返回1,失败返回0
bool search_good(int iD); //iD为指定的物品编号,在链表中查找有该编号的物品,并输出物品信息,成功返回1,失败返回0
系统主要功能分两类:......。
2、系统运行环境:
(1)硬件环境:CPU:奔腾3以上
内存:64M以上
显卡:集成显卡
硬盘:10M
(2)软件环境:操作系统:windows 98/me/2000/XP/vista
DOS系统支持中文输出
3、功能需求描述:
(1)登录模块:......
(2)系统管理模块:......
三、详细设计
1、模块功能:
程序源代码共分为5个模块,分别是流程模块、桌面模块、密码模块、链表模块、文件模块。
我负责编写的模块是流程模快、密码模块(加密部分)、链表模块
(1)流程模块:作为系统的基本框架,该模块用于编订程序运行流程、定义结构体。
(2)密码模块(加密部分):密码加密后,文件中保存的密码为已经加密的乱码,只有程序运行时才能使用这段乱码。其他部分为文件写入读出和检验操作。
bool search_good(char *nm);// nm为指定的物品名称,在链表中删除有该名称的物品,并输出物品信息,成功返回1,失败返回0
bool search_name(struct good *node); //node为新增节点,查找与其名称相同的节点,成功返回1,失败返回0
bool show_goods_list(); //显示物品信息列表,遍历所有good节点,输出good节点的信息
(2)数据存贮方式:
......
(3)使用的语言:C\C++语言。
2、系统模块结构图:
3、模块设计:以下为各个功能模块的流程图
4、界面设计:
(1)欢迎/退出画面:
(2)密码输入界面:
(3)各菜单界面:
(4)增加物品信息:
(5)查询物品信息:
输入界面:
输出界面:
(6)物品入库:
(7)库存清单
(8)物品出库:
void init(struct in_or_out *node);// node为in_or_out类刚被分配内存的节点,函数初始化node
void time_now(char t[]); //初始化t[],使其得到计算机时间
以下为good类所用的链表操作:
bool insert_good(struct good *node); //node为新增节点,并将其插入链表,成功返回1,失败返回0
相关文档
最新文档