资源描述
,07组学生成绩管理系统项目答辩,C语言课程设计 学生成绩管理系统,组长:张 凯 组员:施 威 金 阳 周志飞,徐州工程学院,1.项目目标,1.体会从需求理解出发,到软件概要设计,详细设计,开发,测试的整体流程。熟悉软件开发整体过程 2.能够熟练掌握使用C进行数据链表开发。 3.能够熟练掌握使用C进行数据的存储。 4.培养快速学习新知识的能力。,2.开发概要,开发一个运行于Windows XP平台的学生成绩管理程序,可以实现学生成绩的输入、插入、排序、查询等功能。具体功能请参考后面的截图等。,3.项目背景,学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。 一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差,人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着来越重要的作用。,4.开发环境,OS:Microsoft Windows XP SP2 Complier:Visual C+ 6.0,5.参考文献,1.C程序设计 (第四版)谭浩强著 2.C语言程序设计案例教程张基温著 3. 百度文库及其他网络平台,6.关键技术,面向过程设计 数据结构 C、C+控制台应用 文件操作 内存、指针、字符串操作 链表数据结构的使用。 查找、排序算法 位运算,整 体 流 程 图,input,insert,del,find,display1,display,add,临时增加功能:加密(secret) 和存储(save),1.加密功能secret():利用字符型数组的知识,对系统进行加密 。同时当输入密码超过三次时用户将无权进入该系统!,7.项目亮点,2.文件存储功能save(),对当前所包含的全部学生信息保存到磁盘的一个文件中,8.产品展示(1).进入界面,(2).选择功能模块,输入信息和增加信息模块讲解(金):,输入: 利用input函数,定义原始数据录入模块,然后利用do-while语句循环,其特点是先执行循环体语句,然后判断循环条件是否成立,不成立就退出,成立就再执行循环体语句,提高录入效率。 增加:利用insert函数,定义添加新学生信息函数,也是利用do-while语句循环, 同样可以更快得增加学生信息。,(3).录入学生信息模块input(),录入四位学生的成绩,(4).增加学生信息模块insert(),删除信息和对信息排序模块讲解(施):,删除模块我们做了按学号删除学生信息的程序,因为这样删除信息会很快捷。 而排序的模块我们做了按学号排序、按总成绩排序、按语文成绩排序、按数学成绩排序、按英语成绩排序。只要输入要求前面对应的序号,就可以进行相应的排序。其中,我们采用switch语句对排序情况进行分类,在程序中用到了数据结钩,而排序我们主要用的是“冒泡排序”,考虑到程序结构的整齐,我们没有采用其他的排序方法,(4).删除信息模块del(),删除后:,(5).对当前所有学生信息分类排序display1(),分别设计五种排序方法供用户选择:,【按照学号进行排序】Sort_by_num(),【按照总分进行排序】sum() /另外三种不再一一介绍,查找信息和显示信息模块讲解(周):,查找:这一部分我们调用了find函数,便于我们更快捷的查找学生的成绩,并且使用了DO-while循环结构,这样我们就可以既方便又快捷的,更加节省空间的查找出学生的成绩,我们采用的是利用查找学生的姓名来查找学生信息这样更具有代表性。 显示:这一部分我们调用了display函数,同样的使用了do-while循环结构,不需要初始条件,这样更加方便快捷的显示大量的学生数据。,(6).查找当前任一学生信息模块find(),(7).显示当前所有学生信息display(),9.项目总结,完成该项目的设计后,本小组成员做出如下总结: 1.对C语言本身学习的不够好,运用的基本上函数数组等一些简单的编程方法,对指针单链表操作等运用却反一定的能力。 2.通过本次课程设计更加明白了团队合作对于一项工程的重要性并了解了一些基本的项目开发的流程等知识。 3.该项目可以优化的地方还有很多,适当的借鉴和学习对项目开发也是有好处的。 4.指导老师的帮助。,谢谢!,
展开阅读全文