关于课程相关论文范本,与职文答辩技巧学校教师,职文答辩技巧湖南相关论文格式
本论文是一篇关于课程相关论文格式,关于职文答辩技巧学校教师,职文答辩技巧湖南相关大学毕业论文范文。免费优秀的关于课程及学生及课程设计方面论文范文资料,适合课程论文写作的大学硕士及本科毕业论文开题报告范文和学术职称论文参考文献下载。
仲恺农业技术学院
课程设计
论文题目学生选课系统
姓名林煜明
院(系)计算机科学与技术
专业班级计算机053
学号200510214303
指导教师陆谊
职称讲师
论文答辩日期2007年12月31日
仲恺农业技术学院教务处制
目录
一、需求与功能分析1
二、系统总体框架图1
三、模块设计与分析2
(一)前台学年选课端2
(二)后台老师管理端2
四、类的设计与分析3
五、类图及类的说明3
(一)Student类4
(二)Subject类5
六、特色算法分析7
七,功能测试9
八,心得和不足10
九,程序源代码12
(一)主函数部分:12
(二)Course.h部分14
(三)Student.h部分15
(四)Student.cpp部
关于课程相关论文范本
(五)Studentdb.h部分18
(六)Subject.h部分18
(七)Subject.cpp部分19
(八)Subjectdb.h部分21
(九)Menu.h部分21
需求与功能分析
实现学生登录和老师的登录,学生可以进入学生的选修课系统学生端进行操作,老师可以在选修课系统管理端对学生的选课进行操作.
实现选修课系统学生端的选课功能,选课人数的查询,选课信息的查询,每个学生选课信息查询,课程被选的情况(最多不超30人).学生平均生绩的查询,选课后保存所有选课的数据功能,退出功能等.
实现选修课系统管理端登录(密码)功能,老师可以增加学生,增加课程,删除学生和删除课程待操作,并且能填写课程成绩,更改课程学生等增加和修改功能,以及查看学生人数与每个学生的平均分,选课与每门课程平均分的功能和修改后对数据的保存,最后退出功能的实现.
此系统要有完整的数据查询,增加,修改和更新操作,并能方便学生的选课和老师的修改和查询,并有好的操作方法.
系统中的操作数据以流的方式流出到文件中进行保存和读取.
此系统在Windows平台下用C++语言进行开发和调试,并使系统能在Windows平台下运行并且工作.
系统总体框架图
模块设计与分析
根据选课系统的需求分析,可以将该系统划分为前台学生选课端模块和后台老师管理端模块这两大功能模块.
前台学年选课端
前台学生选课端模块实现学生选课选项,学生选课情况,课程选课情况,学生平均成绩,保存数据和退出系统等小模块.
学生选课选项
读取student.txt文件中的数据,判断是否有学生数据,如果有的话进行输出,输入学生姓名后,读取subject.txt文件中的数据,判断是否为空,如果有课程进行输出,并可以进行选课.
学生选课情况
读取student.txt文件和course.txt文件中的数据,显示学生始名和选课的情况(选了几门),最多可以选五门,每门都不能重选,输入学生姓名后可以查看学生选课的详细情况,比如平均成绩.
课程选课情况
读取subject.txt文件,显示课程名称和选此课程的人数.
学生平均分成绩
读取student.txt文件和course.txt文件中的数据,进行课程成绩计算,得出平均成绩并输出.
保存所有数据
把学生选课的内容还有学生的信息写到student.txt和course.txt和subject.txt件中去,把链表中的数据利用比较和循环的方法写到不同的文件中去.
退出系统
实行简单的退出.用exit(0)进行退出.
后台老师管理端
后台老师管理端模块实现老师的登录,增加学生和课程,删除学生和课程,填写某课程成绩,更改学分,查看学生人数与平均分,查看选课与平均分的情况等小模块.
增加学生选项
要求输入要增加学生的姓名,可以同名,把要增加的姓名写到student.txt文件里面去.
增加课程选项
要求输入要增加学生的姓名,可以同名,把要增加的姓名写到subject.txt文件里面去.
删除学生和课程
要求输入学生或课程号,这样可能进行判断是不是有这个同学或课程存在,如果没有就要说明一下,好里有就从student.txt或subject.txt文件中去删除这个同学或课程.
填写某课程成绩
输入某课程,然后判断些课程的存在性,然后在subject.txt中查找有没有这些课程的存在,如果有,在这个课程的同学都找出来,填写成绩后,把他输入到course.txt文件中.
更改程课的学分
从subjuect.txt中输出程课名,要求输入要更改的程课名,然后更改.
查看学生人数与平均分
从student.txt和course.txt中读出学生的姓名和总课程然后计算平均分成绩,然后进行输出.
查看选课与平均分
从subjuect.txt课程然后计算平均分成绩,然后进行输出.
类的设计与分析
为了进行真的能选课,我进了以下几个类进行设计,用student类来设计学生的属性和动作设计,用course.h和student.h和studentdb.h进行辅助设计,student类进行保存学生的姓名还有最多的课程等属性,还有动作操作,用subject类来设计学生可以选的课程,其中可以保存课程名,课程学分,课程的平程成绩,还有选课的最多人数,还有实际的学生数,其中还可以读出学生姓名,读出学分,读出课程名等操作.它用subject.h和subjectdb.h进行辅助设计,menu.h用来进行功能选项开发包括界面开发的功能.
类图及类的说明
Student类
classstudent
{
public:
student(),
student(course*cou,intfact,intmax),
voidreadname(charN[]),
voidgetname(charN[]),
voidwrecourse(charN[],floatscore),
floataverage(),
voidaddcourse(charN[],floatg),
intfindcourse(charN[]),
intretfactcourse(),
course*retroot(),
intretmaxcourse(),
voidclrroot(),
private:
charsname[20],
intmaxcourse,
intfactcourse,
course*root,
},
student类说明表
名称属性说明sname数据成员学生的姓名factcourse数据成员学生实际所学的课程数目maxcourse数据成员学生最多可以学五门课程root数据成员课程的根结点指针student()成员方法构造函数student(course*cou,intfact,intmax)成员方法重载voidreadname(charN[])成员方法读入学生的姓名voidgetname(charN[])成员方法得到学生的姓名voidwrecourse(charN[],floatscore)成员方法要据课程名写入学生课程的成绩floataverage()成员方法学生课程的平均成绩voidaddcourse(charN[],floatg)成员方法给学生增加一门课intfindcourse(charN[])成员方法查找是否已有此课程,如果有返回1,如果没有返回0intretfactcourse()成员方法得到所学的课程数目course*retroot()成员方法利用键表将所有的课程保存起来intretmaxcourse()成员方法得到所学的课程数目voidclrroot()成员方法清零Subject类
classsubject
{
public:
subject(),
floatreadcredit(),
voidgetcredit(floata),
floatgetaverage(),
floatgetresult(charN[]),
voidgetkname(charN[]),
voidsetkname(charN[]),
voidfindstudent(studentdb*P),
studentname*retfirst(),
intretactivestudent(),
intretmaxstudent(),
voidclractivestud(),
private:
intmaxstudent,
intactivestud,
studentname*first,
floatcredit,
floataveragerusult,
charkname[20],
},
subject类说明表
名称属性说明maxstudent数据成员最多学生数activestud数据成员实际学生数*first数据成员学生名单root数据成员该课程的学分credit数据成员该课程的平均成绩kname[20]数据成员该课程的名subject()成员方法构造函数floatreadcredit()成员方法得到课程的学分voidgetcredit(floata)成员方法设置学分floatgetresult(charN[])成员方法查找某个学生的成绩voidgetkname(charN[])成员方法读出课程的名称voidsetkname(charN[])成员方法读入课程的名称voidfindstudent(studentdb*P)成员方法根据该课程的名称,寻找
关于课程相关论文范本,与职文答辩技巧学校教师,职文答辩技巧湖南相关论文格式参考文献资料: