C语言程序设计课程设计报告体育器材借还信息管理系统.doc

上传人:仙人指路1688 文档编号:2384719 上传时间:2023-02-17 格式:DOC 页数:15 大小:67KB
返回 下载 相关 举报
C语言程序设计课程设计报告体育器材借还信息管理系统.doc_第1页
第1页 / 共15页
C语言程序设计课程设计报告体育器材借还信息管理系统.doc_第2页
第2页 / 共15页
C语言程序设计课程设计报告体育器材借还信息管理系统.doc_第3页
第3页 / 共15页
C语言程序设计课程设计报告体育器材借还信息管理系统.doc_第4页
第4页 / 共15页
C语言程序设计课程设计报告体育器材借还信息管理系统.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《C语言程序设计课程设计报告体育器材借还信息管理系统.doc》由会员分享,可在线阅读,更多相关《C语言程序设计课程设计报告体育器材借还信息管理系统.doc(15页珍藏版)》请在三一办公上搜索。

1、 C语言程序设计课程设计报告题 目:体育器材借还信息管理系统专 业:数学与应用数学学 号:100940109姓 名:指导教师: 成 绩: 二零一一年六月十日课程设计报告体育器材借还信息管理系统1、研究背景及意义由于现今的大学里体育器材借还信息管理非常常见,管理人员付出很多的工作时间,得到的效率很低。因此为提高工作效率,为了减轻学校对体育器材借还信息进行登记,查找,等繁杂的工作,进而设计出一个功能完善、合理、先进的体育器材借还信息管理系统来管理。开发此体育器材借还信息管理系统软件,以供管理人员及操作者对学校公共体育器材进行轻松的管理,方便操作者随时添加、查询、修改体育器材借还信息。2、问题描述和

2、功能要求问题描叙对体育器材借还信息进行管理,主要包含的信息为:班级、器材名称、数量、编号。此主要系统包含下列功能:对体育器材借还信息的插入、查询、修改、删除、显示、退出。系统功能1)、每一条记录包括一个班级、体育器材名称、数量、编号。2)、插入功能:插入一个班级的信息。3)、查找功能:按班级号查找体育器材借还信息,并显示。4)、修改功能:能将以前输入并保存的数据进行修改。5)、删除功能:删除体育器次借还的信息;6)、显示功能:完成全部体育器材借还记录的显示。7)、退出功能:记录完毕退出系统。8)、有一个清晰美观界面来调用各个功能功能模块分工:组长:何春辉何春辉负责:插入功能、显示功能、退出功能

3、、查找功能。王孟然负责:删除功能、修改功能、文件的读写功能与储存功能。3、课程设计报告内容3.1体育器材借还信息管理系统的理论依据1、建立一个结构体数组对象class,用于存储体育器材借还信息。2、建立相应的系统操作函数如下:1)、插入班级体育器材借还的信息函数:Insert(class,s);2)、根据班级号查找体育器材借还信息的函数:Search(class,s);3)、修改体育器材借还的信息函数:Update(class,s);4)、删除班级体育器材借还的信息函数:Delete(class,s);5)、显示所有班级体育器材借还的信息函数:Show(classs,s);6)、从文件中读入数

4、据函数:Read(class_info,s);7)、将所有记录写入文件函数:Save(class_info,s);8)、退出管理系统函数:Exit(0);9)、写main()函数,由用户输入一个参数i,根据i的值来选择要进行的操作。3.2算法流程图流程图已修改好。:体育器材借还信息管理系统的main()函数 显示所有班级器材借还信息根据班级号查找信息插入班级体育器材借还的信息删除班级器材借还的信息修改班级器材的信息从文件中读入数据将所有记录写入文件系统运行结束退出管理系统i!=0请输入一个要操作的菜单项i并根据i值判断执行的操作输出相应的运行结果i=0i!=03.3源程序代码:#include

5、stdlib.h#include string.h#include stdio.h#define MaxSize 50#includemalloc.htypedef struct class_info int s ; /行政班级 char name50; /器材名称 int sum; /器材数量 double telephone; /联系电话 int number; /编号 struct class_info *next; ClassLink, *Pointer;void Insert(Pointer *Head);void Search(Pointer Head);void Update(P

6、ointer Head);void Delete(Pointer *Heaad);void Show(Pointer Head);void File(Pointer &Head);void Exit(Pointer Head);int main() Pointer Head=NULL; /定义表头指针 int i; do /显示一个简易菜单 printf(n); printf(1-插入(Insert)n); printf(2-查询(Search)n); printf(3-修改(Update)n); printf(4-删除(Delete)n); printf(5-显示(Show)n); prin

7、tf(6-文件读入(File)n);printf(0-退出(Exit)n);scanf(%d,&i); /接收用户的选择switch(i) /调用对应的函数 case 1:Insert( & Head); break; case 2:Search( Head); break;case 3:Update( Head); break;case 4:Delete( & Head); break;case 5:Show( Head); break;case 0: break;default:printf(错误选择!请重选);break; while(i!=0);return 0;void Insert

8、(Pointer *Head) /插入函数的定义 int in_number;Pointer p,q,r; /说明变量printf(请输入编号:);scanf(%d,&in_number);p=q= *Head; /查找符合条件的记录while(p!=NULL)if(p-number=in_number) /找到相同的编号printf(已经有相同的编号:);return; else q=p;p=p-next; /走链r=(Pointer)malloc(sizeof(ClassLink); /申请空间r-next=NULL; /设置指针域if(r=NULL) printf(分配空间失败!);re

9、turn;if(q=NULL) /原表为空表* Head=r; /新结点作为头元素elseq-next=r; /在表尾插入元素r-number=in_number; /接收插入数据printf(请输入行政班级:);scanf(%d,&r-s);printf(请输入器材名称:);scanf(%s,r-name);printf(请输入器材数量:);scanf(%d,&r-sum);printf(请输入联系电话:);scanf(%lf,&r-telephone);void Search(Pointer Head) /查找函数的定义 int flag=1; /设定标记变量的初值 int number;

10、 Pointer p; printf(请输入要查询的编号:); scanf(%d,&number); p=Head; /查找符合条件的记录 while(p!=NULL&flag) if(p-number=number)printf(行政班级:%dn,p-s);printf(器材名称:%sn,p-name);printf(器材数量:%dn,p-sum); printf(联系电话:%11.0lfn,p-telephone); flag=0; /找到标记变量设为0 else p=p-next; /指针走到下一个结点 if(flag) printf(没有查询到!);void Update(Pointe

11、r Head) /修改函数的定义 int flag=1; /设定标记变量的初值 int number; Pointer p; printf(请输入要修改的编号:);scanf(%d,&number);p=Head; /查找符合条件的记录while(p!=NULL&flag) if(p-number=number) printf(请输入器材名称:); scanf(%s,p-name); printf(请输入器材数量:); scanf(%d,&p-sum); flag=0; else p=p-next; /指针走到下一个结点 if(flag) printf(没有找到要修改的记录!);void De

12、lete(Pointer *Head) /删除函数的定义 int flag=1; /设定标记变量的初值int number; Pointer p,q; printf(请输入要删除数据的编号:); scanf(%d,&number); p=q= *Head; /查找符合条件的记录 while(p!=NULL&flag) if(p-number=number)if(p= *Head) /删除的是表头元素 * Head=p-next;free(p); else q-next=p-next;free(p); /删除普通元素 flag=0; else /指针走到下一个结点 q=p;p=p-next; /

13、q所指结点为p所指结点的前驱 if(flag) printf(没有找到可以删除的数据!);void Show(Pointer Head) Pointer p; p=Head; int number; printf(输入要显示的编号:); scanf(%d,&number); while(p!=NULL) printf(行政班级:%dn,p-s); printf(器材名称:%sn,p-name);printf(器材数量:%dn,p-sum);printf(联系电话:%11.0lfn,p-telephone);p=p-next;3.4调试时源程序中出现的错误:1、出现了一些语法错误:定义变量类型出

14、现错误;2、出现了一些逻辑错误:while(i!=6)被写成了while(i=6);3、运行出现了错误:scanf函数中变量没有用&;4、使用指针时,忘了定义指针的指向;5、printf函数中变量的输出类型和定义类型不一致,导致输出结果出错;6、在switch语句中break的使用位置不正确;7、函数的引用和定义不相符;8、字母在输入时出现大小写混淆;9、语句结尾出忘记了加分号;10、定义结构体时,数据类型不相符;11、流程图制作忘记了用箭头符号12、多出忘记了加双引号;13、标记变量忘了赋初值;14、使用单链表时没有定义表头指针等等;3.5运行结果窗口:1、菜单选项窗口:2、插入窗口:3、查

15、询窗口:4、修改窗口:5、删除窗口: 6、显示窗口:7、退出窗口:总结:开始接到这个作业时觉得有点惊讶,因为学了一个学期的C语言程序设计我是连简单的错误都改不好,更别提是要自己动手去做什么课程设计了。每次去机房对着电脑,心里就会有一种压力,因为一个简单的程序我都会弄错几个地方,看着周围的同学都做得很好,我的心里难免会有一些担忧。平时连C语言上机作业我也去同学那里拷贝,实在说不过去,如果继续这样考试肯定不能通过的,然后我就想办法,自己努力克服困难,搞了一段时间的自学,还找了学长帮忙。最后通过和同学合作,发了大概一周的时间终于共同完成了源程序的编写!通过这次合作,我学到了很多东西,例如在找合作人时

16、我是发了一定的功夫的,我尽量找与自己有不同长处的同学合作,这样可以让我们在合作中取长补短,更好的发挥出自己的优势,争取把C语言课程设计做的更好。经过了一周多的努力,我的作业终于完成了,但是老师说还有很多地方做的不好,希望我们能再修改一下,找出其中的不足之处并将其完善。C语言程序设计是我大学里接触的第一本有关于计算机语言的课程,没有开课时我心里就很好奇,终于现在自己有机会接触到程序这个神奇的东西了,所以就有很浓厚的兴趣去学习它的理论基础。而现在又要搞课程设计,那就是要把自己所学的理论付诸于实践,这更增添了我的兴趣爱好,又由于我是班上的体育委员,每次上体育课时我都要去体育器材室借体育器材,看见那里

17、的管理员是用本子密密麻麻的记录着所有的班级所借还的体育器材的信息,这就很不方便,因此就引起了我对做这个程序设计的兴趣。又由于现今的大学里体育器材借还信息管理非常繁琐,管理人员付出大量的工作时间,得到的效率不高。因此我们打算开发此体育器材借还信息管理系统软件,以供器材管理人员及操作者进行器材借还管理,方便操作者随时插入、查询、删除、修改班级体育器材借还信息。总之,我认为这次的课程设计做的还是挺不错的,毕竟这是我们自己第一次做,没有什么经验和好的技术,但我们还是按时完成了任务。总的来说,做完了还是蛮有成就感的,要是能得到老师的肯定,那我们将会更加努力。通过本期的学习,我们知道了计算机高级语言对生活和发展的重要性,因此我们决定要在下期里努力学好下一门计算机高级语言,以便于更好的溶入社会和服务社会。也为自己的发展多增添一条道路。参考文献:1谭浩强著C语言程序设计(第四版 ),清华大学出版 出版时间:2010年2谭浩强 著C语言程序设计习题与上机指导(第三版) 清华大学出版 出版时间:2005

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号