c语言实验设备管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计说明书
学院、系:
专业:
学生姓名:学号:
设计题目:实验设备管理系统
起迄日期:
指导教师:
日期: 2017年5月12日
1.设计目的
练习与巩固《C语言程序设计》理论知识,通过实践检验和提高实际能力,进一步培养自己综合分析问题和解决问题的能力。掌握运用C语言独立地编写调试应用程序和进行其它相关设计的技能。
2.任务概述
要求实验设备管理系统实现对实验设备基本信息(设备编号,设备种类,设备名称,设备价格,设备购入日期,是否报废,报废日期等)的管理。系统应给用户提供一个操作简便的人机界面,使用户可以通过菜单的方式来方便的调用提供的功能。
主要功能
(1)完成对设备信息的录入函数
(2)完成修改某个设备信息的函数
(3)根据给定信息对设备进行分类统计
(4)设备的破损耗费和遗损处理
(5)设备的查询
3 模块划分
功能[1]:添加新的设备信息
功能[2]: 统计设备数量
功能[3]:查找符合条件的设备及其数量
功能[4]:对设备信息按条件进行分类排序
功能[5]:修改设备信息
功能[6]:删除某条设备记录
图3.1功能图
图3.2 菜单图
4 主要函数说明及其N-S
录入设备信息的N-S 图,如下图所示 实验设备管理系统
添加设备信息
修改设备信息 查询设备信息 删除设备信息 显示设备信息 统计设备信息
退出系统
(1)查找search()
图4.4 查找操作N-S图
(2)分类sort()
按某种条目进行分类也是需要通过查找相同,但不同的是条目的具体内容是不确定的,只是把条目内容相同的部分进行排序使其归类在一起,使用了冒泡排序法。由于是使用字符串,所以排序的依据是根据ASCII码顺序。
图4.5 分类N-S图
图4.5 分类N-S图
(3)删除delect()
读取文件内容,但读写时跳过需要删除的行不读,然后把读取出的内容重新写入文件
图4.6 删除N-S图
5 程序运行数据及其结果
(1) 录入input()
图5.1 显示内容界面图
(2) 修改change()
int i,j; char c[20];
printf("\nenter you want delete name :\n");
for(i=0;i if(strcmp(c,dev[i].devname)==0) Y N for(j=i;j dev[j]=dev[j+1]; printf("\t\t\tyou had delete %s\n",c); count--; output(); 图5.2 修改界面图 修改后显示 图5.3 修改结果 (3)删除delect() 图5.4 删除界面删除后 图5.5 删除结果 (4)添加 图5.6 添加前 图5.7 添加后 (5)查找check() 图5.8 界面 图5.9 查找结果(6)分类sort() 图5.10 分类界面 图5.11 分类结果 6 课程设计心得 这次课程设计遇到了很多问题,有的是文档格式的设置不符合要求,有的是编译的代码运行不出来,于是又翻出了上学期的C语言书籍温习有关知识。划分功能模块时,对于实验设备方面的知识欠缺,于是在网上查找了相关知识,结合网上热心网友提供的资源。完成了这一步。一个功能对应一个函数,有些函数比较复杂,请教了其他同学并结合网上的例子完成了编写。第一次修改说明书之前,对于N-S图的画法不是太熟悉,于是用了流程图,后来班长多次强调才改成了N-S图,看了看班长在群里发的例子,又结合书上的说明,完成了N-S图。文档格式的设置主要通过网上的教程来完成。对于一名新手来说,网上做图并不是一件容易的事,刚开始不是错位就是字体太大,有时候修改了文本图又飞到了下一页。一次次的修改后总算积攒了一些经验,后来画多了总算能够比较快而准确的画出来。 C语言是一门实践性较强的课程,只学会书本上的知识是远远不够的,还需要实训来巩固知识并让我们学会运用。C语言也是软件工程后期学习的基础语言,因此必须学好C语言。一名优秀的程序员,不仅要掌握编程方面的知识,还应该学会怎样使用办公软件。 附录: #include "stdio.h" #include "stdlib.h" #include "cstring" #define COUNT 30 void start(); //函数声明 void input(); void change(); void sort(); void dele(); void output(); void search(); struct deviceInfor{ char devno[30]; int devsort; //1 代表微机 2代表打印机 3代表扫描机char devname[30]; int devprice; char devbuydate[30]; int devstate; char devdonedate[30]; }dev[COUNT]; int count=0; main() //主函数 { while(1) start(); } void start() //启动菜单 { int chi; printf(" 实验设备管理系统\n"); printf("