1、C程序设计课程设计报告课程设计(大作业)报告课程名称: 程序设计基础 设计题目: 实验设备管理系统实验设备管理系统_ 院 系: 信息技术学院 班 级: 2012级计算机科学与技术设 计 者: 学 号: 指导教师: 设计时间: 2013.7.8 .-2013.7.12 信息技术学院昆明学院课程设计(大作业)任务书姓 名: 院(系): 专 业:计算机科学与技术 学 号:任务起止日期:2013. 7.8-2013. 7.12 课程设计题目:实验设备管理系统设计课程设计要求:系统提供下列服务: 1.系统以菜单方式工作。 2能够完成对设备信息的录入(设备信息用文件保存),可不定时地增加设备信息。 3对设
2、备信息进行分类统计 4设备信息的查询 (1)按设备类型查询 (2)查询报废设备 5设备信息的删除与修改 (1)输入设备编号,若该设备报废,则删除;如果没有报废,则不能删除该设备。 (2)按设备编号修改设备信息。工作计划及安排: 1,课程设计内容说明,老师讲解内容0.5天; 2,翻阅课本及相关书籍查找资料0.5天; 3,编写应用程序1.5天; 4,上机调试运用程序1天; 5,操作、并改正错误程序0.5天; 6,写课程设计报告1天。指导教师签字 年 月 日 课程设计(大作业)成绩学号: 姓名: 指导教师: 课程设计题目: 实验设备管理系统设计总结: 通过五天的课程设计,我对C程序设计的知识更加进一
3、步的了解了。跟队友合作,一起上网查找资料、请教别人,一起完成了对代码的编写,并对已写就的代码进行自行检查,自己检查后上机操作运行,通过上机对错误之处加以改正,完成了设计内容,达到了题目的要求。本次设计我们发现我们在C语言知识上有很大的不足,对有些基本知识概念模糊,导致我们在设计中遇到很多问题,代码编写的错误,结构体运用的出错,数据结构的错用.都暴露我们在基本知识方面的缺陷,我们相信通过本次课程设计,我们会将C语言知识更好的运用到今后的学习中。 总之,这次课程设计是我们学到了很多,也发现了很多的不足,学好C语言是作为计算机专业学生的一项基本义务,我们会将之进行到底,最后,感谢老师五天来的耐心解答
4、! 指导教师评语:成绩:填表时间: 指导教师签名: 一、问题的定义 实验设备管理系统中设备信息包括:设备编号,设备种类(如:微机、打印机、扫描仪等),设备名称,设备价格,设备购入日期,是否报废,报废日期等。通过对该系统输入设备各项信息,对已输入的设备信息进行删除和修改,能够完成对设备信息的录入(设备信息用文件保存),可不定时地增加设备信息。能对设备信息进行查询,并对设备信息进行分类。 要求:1.数据存储采用文件形式; 2.标准的C语言输入输出;3.功能完善,适当注释; 4.模块化设计、结构化编程。二、需求分析系统提供下列服务:1、系统以菜单方式工作2、能够完成对设备信息的录入(设备信息用文件保
5、存),可不定时地增加设备信息。3、对设备信息进行分类统计4、设备信息的查询(1)按设备类型查询(2)查询报废设备5、设备信息删除与修改(1)输入设备号,若该设备报废,则删除;如果没有报废,则不能删除该设备。(2)按设备编号修改设备信息三、总体设计根据系统的要求,系统总体设计如下图所示。 系统总体结构图四、详细设计 (一)设备数据结构设计 #define SIZE 30 /*定义常数表示记录数*/struct shebei /*定义数据结构*/ int num; /*输入设备编号*/ char name15; /*输入设备名称*/ char kind15; /*输入设备种类*/ char ove
6、r15; /*报废*/ char yesno15; /*选择“yes”或“no”*/ char time10; /*输入设备报废时间*/ double price; /*输入设备价格*/shebeiSIZE; (二)函数设计 主函数 main()允许用户通过菜单进行功能选择,使用相应的功能代码来调用对应的函数功能。 .其他函数 (1)设备信息录入函数void input() 算法思想: a.依次录入结构体数组中所包含的各个设备; b.返回实际录入的设备信息数。 (2)将设备信息存贮为文件函数void save(int c) 算法思想: a.定义指向文件的指针变量; b.输入存贮路径及文件名,打
7、开文件,若不能打开文件给出提示 (3)查找设备信息函数void find() 算法思想: a.定义指向文件的指针变量; b.按类别打开文件,读出其中的信息。 (4)删除设备信息函数void del()算法思想:a.定义指向文件的指针变量;b.打开存贮过的文件,对其进行删除并把删除后的文件保存。 (5)修改设备信息函数void xiu()算法思想:a. 定义指向文件的指针变量;b. 打开文件按选项执行下一步,保存执行后的文件。流程描述(1)创建菜单流程(2)设备信息录入流程(3)浏览设备信息流程(4)按设备类型查找流程(5)按是否报废查找流程 (6) 删除设备信息流程 ()添加新设备信息流程(8
8、)修改设备信息流程4.代码设计和执行结果#include #include #include #define SIZE 30struct shebei int num; /输入设备编号 char name15; /输入设备名称 char kind15; /输入设备种类 char over15; /报废 char yesno15; char time10; /输入设备报废时间 double price; /输入设备价格 shebeiSIZE;int menu()/创建菜单 int b; system(cls);/清屏 printf(nn); printf(t 设备管理系统 n); printf(
9、t - n); printf(t n); printf(t 1. 设备信息录入 n); printf(t 2. 设备信息浏览 n); printf(t 3. 设备信息查询 n); printf(t 4. 设备信息删除 n); printf(t 5. 设备信息添加 n); printf(t 6. 设备信息修改 n); printf(t 7. 设备分类统计 n); printf(t 0. 退出 n); printf(t-n); do printf(n 输入你的选择项(07):n); scanf(%d,&b); while(b7); fflush(stdin); return b;执行结果如下;vo
10、id input()/录入设备信息 int c=-1; char c1=y; while(c1!=n&c1!=N) c+; printf(n 请你输入设备num号:); scanf(%d,&shebeic.num); printf(n 请输入设备名称:); scanf(%s,shebeic.name); printf(n 请输入设备种类:); scanf(%s,shebeic.kind); printf(n 请输入报废日期:); scanf(%s,shebeic.over); printf(n 请输入设备是否报废:); scanf(%s,shebeic.yesno); printf(n 请输入
11、设备购买时间:); scanf(%s,shebeic.time); printf(n 请输入设备价格:); scanf(%lf,&shebeic.price); printf(提示:已经完成一条记录的添加。n); printf(是否继续输入(y/n)n); scanf(%c,&c1); c1=getchar(); save(c);执行结果如下;void print()/浏览设备信息 printf(设备编号 设备名称 设备种类 报废日期 是否报废 购买时间 价格n); printf(-n); int i,t; FILE *fp; fp=fopen(date.txt,rb);/打开一个只读文件 t
12、=load(); if (t=-1) return; else for (i=0;i=t;i+) fread(&shebeii,sizeof(struct shebei),1,fp);/调用fread函数 printf(n%-13d%-11s%-7s%-10s%-13s%-10s%-5.2lfn,shebeii.num,shebeii.name,shebeii.kind,shebeii.over,shebeii.yesno,shebeii.time,shebeii.price); printf(-n); fclose(fp);执行结果如下;void find()/查找设备信息 int b,i,flag,t; FILE *fp; fp=fopen(date.txt,rb);/打开一个只读文件 t=load(); char kind10,c2=y; while(c2!=n&c2!=N) system(cls); printf(t 1. 按设备类型查询 n); printf(t 2. 查询报废设施 n)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1