设备管理_实验室设备管理程序_第1页
设备管理_实验室设备管理程序_第2页
设备管理_实验室设备管理程序_第3页
设备管理_实验室设备管理程序_第4页
设备管理_实验室设备管理程序_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

管理信息系统课程设计报告书实验室设备管理程序姓名:李晓红 110541114 马宁宁 110541120 郭颖洁 110541107 李俊宏 110541113 顾 乡 110541106专业:工商管理指导老师:褚衍昌所属学院:经济与管理学院 二0一三年七月 目 录第1章 绪论21.1项目背景21.2基本情况介绍21.3小组分工2第2.章 系统分析221可行性分析222实验室设备管理信息系统的项目进程223业务流程图22.4数据流程图2第3.章 系统设计23.1功能结构图23.2.功能模块23.3详细设计23.4系统代码设计2第4.章 系统实施24.1系统调试24.2系统应用手册24.3主要抓图2第5章小组总结2 第一章 绪论1.1项目背景实验室设备管理程序是针对实验室内复杂的设备能进行较为方便的管理而设计的程序,开发工具采用Visual C+6.0,主要对设备信息的录入,管理,使用等信息以及信息删除、修改、显示、保存等操作。系统给用户提供了一个简单的人机界面,使用户可以根据提示进行操作,对设备进行方便的管理。本系统主要功能有:1. 新建设备信息2. 查询设备信息3. 修改设备信息4. 显示设备信息5. 删除设备信息6. 设备分类显示7. 保存设备信息8. 退出系统1.2基本情况介绍功能需求: 根据系统界面进行操作。一 新建设备信息:对新设备进行信息录入,包括设备名称、编号,所在实验室名称、使用者姓名等信息。二 查询设备信息:有按设备名称,设备编号,使用者三种方式进行,按提示操作,输入相应信息后显示所要查询的设备信息。三 修改设备信息:输入所要修改设备的名称,查找到并显示原来的信息,然后进行新信息的录入。四 显示设备信息:对所有设备的信息进行统一显示。五 删除设备信息:输入所要删除设备的名称,然后显示其信息,并询问是否删除,之后进行删除。六 设备分类统计:统计同一类别的设备数量,并显示。七 保存设备信息:将整理好的信息保存。八 退出系统:1.3小组分工 课程研究方向由全体成员共同讨论得出,具体如下: 软件开发:李晓红,马宁宁 论文编写:郭颖洁,李俊宏 论文修改:顾乡第二章 系统分析2.1可行性分析一 管理上的可行性 目前管理信息系统已被各企业广泛接受,高层管理人员利用管理信息系统能对该企业的资源进行全面有效的管理和利用,以实现其管理目标,达到利润最大化。故此,顺应时代的发展,高层管理人员也愿意引进管理信息系统并为其实施创造效益的良好环境。二 技术上的可行性目前,大多数企业都拥有一流的信息设备和技术人才,为管理信息系统的实施提供了技术支持。三 经济上的可行性该系统可以提供更多的高质量的信息,提高信息交流的速度。故此,该系统从经济效益方面衡量是可行的。通过初步调查,企业面临的问题以及企业的发展战略,明确了开发新系统的目的。1加强企业内部物品管理,及时掌握实验器材库存。2及时掌握试验部门需求,制定采购计划。3加强生产过程的管理,及时提供各种器材信息。4加强成本管理。5规范员工管理,规范器材管理规章制度。22实验室设备管理信息系统的项目进程1、首先应该对实验室管理系统进行系统的分析。报告对总体的规划和可行性的研究,现行系统的详细的调查,需求的分析和逻辑结构的构思。2、其次总体设计。系统总体结构的设计,数据库的设计,计算机和网络系统的配置方案,系统的详细设计,如:代码设计,用户界面设计等。3、然后利用c+6.0程序与数据库结合。2.3业务流程图企业设备类型表员工档案表管理员设备报废表权限表设备使用登记表设备管理表采购部门设备使用人员设备价格表实验室设备采购表2.4数据流程图实验部门管理员采购部门研究项目信息入库处理企业信息处理设备信息处理设备使用信息员工信息设备储备信息入库信息查询第三章 系统设计3.1功能结构图设备档案管理员工信息管理采购信息管理图3-1 系统功能结构图企业实验室设备管理设备档案录入设备报废查询设备档案查询员工档案管理员工档案查询预购设备列表已有设备查询3.2系统功能模块此程序通过以下模块实现其功能1. 主菜单显示:通过menu_main()来显示首界面的主菜单,用户可根据提示进行操作。2. 新建模块:通过input_info()来实现,通过输入设备名称、编号等信息完成输入,系统提示是否继续输入,Y继续N返回主菜单。3. 查询模块:通过search_info()来实现,有三种查询方式,按设备名称,按编号,按使用者姓名。根据提示操作,查询到并显示所要查询的设备信息,之后系统提示是否继续,Y继续N返回查询子菜单。子菜单中有退出查询选项。4. 修改模块:通过modify_info()来实现,输入要修改设备的名称,系统找到并显示其原有信息,按提示输入新的信息,完成后提示修改成功。5. 显示模块:通过show_info()来实现,将所有设备信息进行显示,完成后按任意键返回主菜单。6. 删除模块:通过delete_info()来实现,输入要删除设备的名称,系统找到并显示其信息,系统提示是否删除,Y删除N取消。完成后系统提示删除成功。7. 设备分类统计模块:通过sort_out_info()来实现,输入所要统计的设备类别,系统将显示所有此类设备的信息,并显示统计的数量。完成后系统提示是否继续,Y继续N返回主菜单。8. 保存模块:通过save_info()模块来实现,将文件保存到“实验室设备管理记录”里面。9. 退出系统:通过exit_system()来实现。本程序用此结构体来存储信息,并建立结点。typedef struct nodechar name30;/设备名称int serialNum;/设备编号(不重复)char position30;/设备所在实验室名称char user20;/使用者姓名double price;/设备价格char varity20;/ 设备种类(如:微机、打印机、扫描仪等等)char date20;/设备购买日期,如20090101等struct node *next;device,*pdevice;3.3详细设计3.4代码设计#include#include#include#includedevice.h/主函数模块*void menu_main(device *head)char choice;while(1)system(cls);print_menu_main();choice=getchar();getchar();if(choice=1)input_info(head);if(choice=2)search_info(head);if(choice=3)modify_info(head);if(choice=4)show_info(head);if(choice=5)delete_info(head);if(choice=6)sort_out_info(head);if(choice=7)save_info(head);if(choice=8)exit_system();void print_menu_main()printf(nnttt 实验室设备管理系统n);printf(nntt *n);printf(tt *t 1.新建设备信息t *n);printf(tt *t 2.查询设备信息t *n);printf(tt *t 3.修改设备信息t *n);printf(tt *t 4.显示设备信息t *n);printf(tt *t 5.删除设备信息t *n);printf(tt *t 6.设备分类统计t *n);printf(tt *t 7.保存设备信息t *n);printf(tt *t 8.退出系统 t *n);printf(tt *n);printf(tt 请选择:);/输入模块*void input_info(device *head)device *newnode;/device *lastnode=NULL;char continue_key;system(cls);newnode=(device *)malloc(sizeof(device);if(newnode=NULL)printf(tallocation failed!);create_newnode(newnode);if(head=NULL)/?head=newnode;elselastnode=search_lastnode(head);lastnode-next=newnode;printf(nt是否继续? Y/Nn);printf(你的选择:);continue_key=getchar();getchar();if(continue_key=Y|continue_key=y)input_info(head);elsemenu_main(head);void create_newnode(device* newnode)printf(tttt新建设备信息nn);printf(请输入-nn);printf(设 备 名 称:);gets(newnode-name);printf(n);printf(设 备 编 号:);scanf(%d,&newnode-serialNum);getchar();printf(n);printf(设备所在实验室名称:);gets(newnode-position);printf(n);printf(使 用 者 姓 名:);gets(newnode-user);printf(n);printf(设 备 价 格:);scanf(%lf,&newnode-price);getchar();printf(n);printf(设 备 种 类:);gets(newnode-varity);printf(n);printf(购 买 日 期:);gets(newnode-date);newnode-next=NULL;device* search_lastnode(device *head) device *last=head;if(head-next=NULL)return head;elsewhile(last!=NULL)last=last-next;return last;/查询模块*void search_info(device *head)char t;system(cls);print_menu_search();t=getchar();getchar();if(t=1)search_by_name(head);if(t=2)search_by_serialnum(head);if(t=3)search_by_user(head);/if(t=4)/exit_search();?void print_menu_search()printf(nntttt实验室设备管理系统n);printf(nntt*n);printf(tt* 1.按设备名称查询 *n);printf(tt* 2.按设备编号查询 *n);printf(tt* 3.按使用者查询 *n);printf(tt* 4.退出查询菜单 *n);printf(tt*n);printf(tt请选择:);void search_by_name(device *head)device *p=head;char name20;int temp=0;char continue_key;system(cls);printf(nnnttt按设备名称查找nn);printf(请输入要查询设备名称:);gets(name);printf(查询结果n,name);print_top();while(p!=NULL)if(strcmp(p-name,name)=0)print_node(p);temp=1;/break;p=p-next;print_buttom();if(temp=0)printf(nnt!没有您要查询的设备!n);printf(n是否继续? Y.确定/N.取消 nn);printf(你的选择:);continue_key=getchar();getchar();if(continue_key=Y|continue_key=y)search_by_name(head);elsesearch_info(head);void search_by_serialnum(device *head)device *p=head;int num;int temp=0;char continue_key;system(cls);printf(nnnttt按设备编号查找nn);printf(请输入要查询设备编号:);scanf(%d,&num);getchar();printf(查询号设备结果n);print_top();while(p!=NULL)if(p-serialNum=num)print_node(p);temp=1;break;p=p-next;print_buttom();if(temp=0)printf(nnt!没有您要查询的设备!n);printf(n是否继续? Y.确定/N.取消 n);printf(n你的选择:);continue_key=getchar();getchar();if(continue_key=Y|continue_key=y)search_by_serialnum(head);elsesearch_info(head);void search_by_user(device *head)device *p=head;char user20;int temp=0;char continue_key;system(cls);printf(nnnttt按设备使用者查找nn);printf(请输入要查询设备使用者:);gets(user);printf(查询结果n,user);print_top();while(p!=NULL)if(strcmp(p-user,user)=0)print_node(p);temp=1;break;p=p-next;print_buttom();if(temp=0)printf(nnt!没有您要查询的设备!n);printf(n是否继续? Y.确定/N.取消 n);printf(n你的选择:);continue_key=getchar();getchar();if(continue_key=Y|continue_key=y)search_by_user(head);elsesearch_info(head);void print_top()printf(+-+-+-+-+-+-+-+n);printf(| 设备名称 | 设备编号 |所在实验室|使用者姓名| 设备价格 | 设备种类 | 购买日期 |n);void print_node(device *p)printf(+-+-+-+-+-+-+-+n);printf(|%10s|%10d|%10s|%10s|%10.2lf|%10s|%10s|n,p-name,p-serialNum,p-position,p-user,p-price,p-varity,p-date);void print_buttom()printf(+-+-+-+-+-+-+-+n);/修改模块*void modify_info(device *head)device *p=head;device *newinfo=(device*)malloc(sizeof(device);/char name20;int temp=0;char continue_key;system(cls);if(newinfo=NULL)printf(allocation failed!);printf(nnttt修改设备信息nn);printf(请输入要修改设备名称:);gets(name);printf(n);while(p!=NULL)if(strcmp(p-name,name)=0)temp=1;break;p=p-next;if(temp=0)printf(t没有您要查询的设备!);elseprint_top();print_node(p);print_buttom();re_input(newinfo);copy_newinfo(p,newinfo);printf(n修改成功!n);printf(n是否继续? Y.确定/N.取消 n);printf(你的选择:);continue_key=getchar();getchar();if(continue_key=Y|continue_key=y)modify_info(head);elsemenu_main(head);void re_input(device *newinfo)printf(ttt重新输入设备信息nn);printf(请输入-nn);printf(设 备 名 称:);gets(newinfo-name);printf(n);printf(设 备 编 号:);scanf(%d,&newinfo-serialNum);getchar();printf(n);printf(设备所在实验室名称:);gets(newinfo-position);printf(使 用 者 姓 名:);gets(newinfo-user);printf(n);printf(设 备 价 格:);scanf(%lf,&newinfo-price);getchar();printf(n);printf(设 备 种 类:);gets(newinfo-varity);printf(n);printf(购 买 日 期:);gets(newinfo-date);void copy_newinfo(device *p,device* newinfo)strcpy(p-name,newinfo-name);strcpy(p-position,newinfo-position);strcpy(p-user,newinfo-user);strcpy(p-varity,newinfo-varity);strcpy(p-date,newinfo-date);p-serialNum=newinfo-serialNum;p-price=newinfo-price;/显示模块*void show_info(device *head)device *p=head;system(cls);printf(ttt设备信息显示nnn);print_top();while(p!=NULL)print_node(p);p=p-next;/print_buttom();printf(n按任意键返回主菜单nn);getchar();/getchar();menu_main(head);/删除模块*void delete_info(device *head)device *p=head;char name20;char decision;int temp=0;system(cls);printf(ttt删除设备信息nn);printf(请输入要删除设备名称:);gets(name);while(p!=NULL)if(strcmp(p-name,name)=0)temp=1;break;p=p-next;if(temp=0)printf(n没有找到要删除设备!nn);elseprint_top();print_node(p);print_buttom();printf(n是否删除? Y.确定/N.取消n);printf(n请选择:);decision=getchar();getchar();if(decision=Y|decision=y)delete_node(p,head);if(decision=N|decision=n)delete_info(head);void delete_node(device *p,device *head)device *prev=NULL,*curr=head;char continue_key;for(;curr!=p;prev=curr,curr=curr-next);if(prev=NULL)head=head-next;elseprev-next=curr-next;free(curr);printf(nt删除成功!nn);printf(是否继续? Y.确定/N.取消 n);printf(你的选择:);continue_key=getchar();getchar();if(continue_key=Y|continue_key=y)delete_info(head);if(continue_key=N|continue_key=n)menu_main(head);/设备分类统计*void sort_out_info(device *head)device *p=head;int k=0;char t;char varity20;system(cls);printf(n请输入类别:);gets(varity);print_top();while(p!=NULL)if(strcmp(p-varity,varity)=0)print_node(p);k+;p=p-next;print_buttom();printf(%s类设备共有%d个nn,varity,k);printf(是否继续? Y.确定/N.取消 n);t=getchar();getchar();if(t=Y|t=y)sort_out_info(head);if(t=N|t=n)menu_main(head);/保存模块*void save_info(device *head)FILE *fp;device *p=head;if(fp=fopen(实验室设备管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论