您好,欢迎访问三七文档
学生选课系统报告书第1页共15页目录第一章、摘要、关键词·············2第二章、课程设计任务内容与思路········3第三章、程序功能划分及流程图·········3第四章、程序运行结果·············5第五章、设计心得···············9第六章、小组分工···············10第七章、参考文献··············11学生选课系统报告书第2页共15页第一章、摘要与关键词:1、摘要:近年来,随着学校和扩招规模的不断扩大,在校学生的数量也相应的增加,有关学生的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致学生选课管理上的混乱,人力与物力过多浪费,学生管理费用的增加,从而使管理人员的负担过重,影响整个学生选课的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的学生选课系统,对学生以及课程进行集中统一的管理。系统开发的总的设计目标是实现学生选课的系统化、规范化和自动化,实现对学生和课程的集中统一的管理。2、关键词:选课系统、结构体、课程查询、跳转函数学生选课系统报告书第3页共15页第二章、课程设计任务内容与思路1、创建学生、课程结构体,课程查询功能2、课程与学生信息录入,管理3、学生选课功能的实现第三章、程序功能划分及流程图1、主函数2、选课函数开始输入要选择的课程的编号flag++YN结束courses[j].c_num==nj=0;ji;(i初始化为0)flag==0没有找到对应课程YN选课成功j++开始start()堆栈菜单、功能选项使用case条件语句跳转函数goto根据选择进入各函数学生选课系统报告书第4页共15页3、查询课程函数开始输入要查询的课程的编号flag++YN结束courses[j].c_num==nj=0;ji-1;(i初始化为0)flag==0没有找到对应课程YN打印相应的课程j++4、课程增加与删除学生选课系统报告书第5页共15页开始输入要增加的课程的编号printf(“编号已使用过”)YN结束courses[j].c_num==nj=0;ji-1;(i初始化为0)j++frwrite写入课程信息到文件开始输入要删除的课程的编号nYN结束courses[j].c_num==nj=0;ji-1;(i初始化为0)j++不存在相应课程k=0;kj;frwrite写入课程信息到文件k++k=j+1;ki-1;k++第四章、程序运行结果1、主界面学生选课系统报告书第6页共15页2、录入课程信息3、课程信息管理学生选课系统报告书第7页共15页4、录入学生信息5、学生信息管理学生选课系统报告书第8页共15页6、学生选课7、系统信息查看及存储学生选课系统报告书第9页共15页8、退出系统第五章、设计心得由于本程序用到了数组,对于数组的操作掌握的比较熟练,所以在编写程序的时候困难没有那么多。学生选课系统报告书第10页共15页本程序在编写的过程中用到了许多通讯录中的模块化设计和函数互相调用的思想,使得编写比较方便和好用。通过该系统的课程设计分析,我掌握了模块化设计的方法,理解和运用了结构化程序设计的思想和方法,掌握和提高了运用C语言进行程序设计的能力。程序设计的过程,实际上是确定解决问题的详细步骤,而这个步骤通常叫做流程,在程序设计过程中理清楚整个问题的流程很重要,然后采取逐步细化的方法实现整个程序。对于一个较大的应用程序,一般不可能一次就设计出一个很完善的系统。通常要先设计满足基本要求的系统,然后再测试或者在使用的过程中不断完善,慢慢地做成一个功能很完善选修课程管理系统。所以在进行调试的时候需要对许多变量理解和掌握其变化规律等,这对于我更好的掌握visualC中调试的工具有很大的帮助。总之经过这次课程设计,我对c语言的使用和理解都有了很大的加深,对于编程的思想也有了很多新的理解和感受。第六章、小组分工1、组长:●信息录入函数设计(学生信息、课程信息)1、从键盘录入2、从文件录入●算法设计。●任务报告书的修订。学生选课系统报告书第11页共15页●信息文件的创建。2、组员A:●查询函数设计(课程名查询)●退课函数设计。●任务报告书初稿。3、组员B:●信息管理(学生信息、课程信息)1、增加信息2、删除信息●结构体构造。●查阅资料。4、组员C:●选课函数的实现。●存储信息至文件。●主函数设计。第七章、参考文献VisualC++课程设计案例精编C语言课程设计案例精编数据结构(C语言)C语言程序设计教程(第二版)附录、部分源程序主函数:学生选课系统报告书第12页共15页intmain()//主函数{inti;start:printf(\n\t\t\t欢迎使用学生选课系统!\n);printf(菜单:\n);printf(1.录入课程信息\n);printf(2.课程管理\n);printf(3.录入学生信息\n);printf(4.学生信息管理\n);printf(5.学生选课\n);printf(6.系统信息查看及存储\n);printf(7.退出系统\n);printf(\n请输入菜单选项(1~7):\n);scanf(%d,&i);if(i1||i7){printf(输入错误,请重输:\n);gotostart;}switch(i){case(1):{system(cls);inputc();学生选课系统报告书第13页共15页gotostart;break;}case(2):{system(cls);managementc();gotostart;break;}case(3):{system(cls);inputs();gotostart;break;}case(4):{system(cls);managements();gotostart;break;}case(5):{system(cls);elective();gotostart;break;}学生选课系统报告书第14页共15页case(6):{system(cls);store();gotostart;break;}case(7):{system(cls);printf(感谢使用本系统!\n\n再见!\n);}}return(0);}二、课程信息与学生信息structcouse//课程信息结构体{intnum1;charname1[20];intscore;intnelepeo;//课程已选人数intMelepeo;//课程人数上限structcouse*next;};structstudent//学生信息结构体{intnum2;charname2[20];intnelenum[50];//已选课程编号学生选课系统报告书第15页共15页intnelen;//已选课程数量structstudent*next;};voidMs(){for(kk1=0;kk11100;kk1++)for(kk2=0;kk21200;kk2++)for(kk3=0;kk31200;kk3++);}三、选课函数voidelective(){inti;printf(\t\t\t学生选课\n);printf(1.查询可选课程\n);printf(2.查询已选课程\n);printf(3.返回主菜单\n);printf(请输入(1~3):\n);scanf(%d,&i);switch(i){case(1):cheak();break;case(2):hcheak();break;case(3):break;}}
本文标题:选课系统设计报告
链接地址:https://www.777doc.com/doc-5483114 .html