基于C语言的学生成绩管理系统的设计与实现
2021-06-06刘朝元吴彩莲黄洁
刘朝元 吴彩莲 黄洁
摘要:本文从实际需求分析出发,利用C语言设计与实现一款学生成绩管理系统程序。学生记录包括学生学号、姓名、各科目成绩,可以实现成绩的录入、计算总分及平均分、成绩等级评定、成绩查找修改、成绩排序以及成绩打印输出等功能。
关键词:C语言;学生成绩;系统
C作为一种流行的编程语言,已成为非计算机专业学生必需的计算机基础课程。这是一门实践性课程,学习C语言的过程必须经过三个阶段即“敲程序”“改程序”和“编程”。因此,学习好C语言的第一步便是充分做好计算机实践,这就要求教师将传统的教学方法进行改变和突破,以计算机的实践指导学生学习C语言,本文提出的合作学习教学模式能充分提高学生的学习积极性,增进学生之间的团队精神,从而提高教学效果[1]。
一、C语言教学与合作学习的融合必要性
在计算机课程的教学过程中,C语言是一种比较基础的教学知识。要想真正地将计算机语言理解透彻,必须先将程序的应用和编程充分熟悉。因此,无论是单一的教师教学,还是学生自学,都难以满足目前的教学现状。C语言的学习需要将理论与实践结合,所以,这是目前能很好地将教学矛盾的单一性进行解决的方法之一;因C语言教学内容比较复杂,一般的课堂讲解便显得较为乏味;例如,在我校C语言共计56学时的教学中,理论课程和计算机实践课程各占一半,均为28学时;由于C语言学习较为复杂,因此无论是理论还是计算机实践课程,都是在同一网络系统教学环境中进行;因学习的环境比较固定,在机房进行的C语言的教学就比较适合合作学习的学习模式;此外,合作学习更容易被更多的学生接受。他们喜欢在课堂上与“领导者”们一起讨论、合作学习。这不仅可以提高学生的学习积极性,还可以增强他们的合作能力[2]。
二、需求分析
随着学校规模的不断扩大,各院校专业、班级、学生的数量急剧增加,有关学生成绩的各种信息也是成倍增加。为了改变学生成绩管理的不便以及繁琐的工作量,节省教学资源,提高工作效率,开发一个学生成绩管理系统是很有必要的。本系统从实际需求分析出發,利用C语言编写。
三、系统设计
总体设计本项目采用模块化的程序设计方法,将大的任务按照一定的原则分为多个小人物,然后分别设计各个小任务。小任务对应的模块之间相对独立且相关。使用模块化层次结构图来分析其任务的划分。本项目使用大量的数组结构,由九大模块组成。主要包括显示开发团队信息、密码验证登录、学生成绩录入、计算总分、计算平均值、等级评定、查找修改成绩、成绩排序以及系统退出功能。
(1)显示开发团队信息模块:主要利用输出函数打印设计好的开发团队信息。
(2)密码验证登录模块:密码设定为一个字符串,输入正确进入系统主菜单;允许有3次输入机会,如果全部输入错误,提示系统退出[3]。
(3)学生成绩录入模块:可以先输入学生人数,根据输入的学生说完成学生基本信息和成绩信息的录入,并可以显示输出。
(4)计算总分模块:可以完成每名学生所有科目成绩总分的计算并输出。
(5)计算平均值模块:可以完成每名学生所有科目成绩平均分的计算并输出。
(6)等级评定模块:可以根据学生平均分对学生成绩划分不及格、及格、良好、优秀等几个等级的划分并输出显示。
(7)查找修改成绩模块:可以根据输入的学号查找是否系统中存在该名学生信息。如果存在可以修改学生成绩信息并输出;如果不存在则进行信息提示。
(8)成绩排序模块:可以根据学生各科目的总分进行排序输出。
(9)系统退出模块:可以再操作完成后退出系统。
四、系统测试
(1)点击系统运行,首先启动的界面显示开发者团队信息,并提示输入密码。
(2)成功登录界面初始密码为123456,输入错误有3次输入机会,输入成功显示系统主菜单[4]。
(3)选择0-6菜单项,可以完成学生成绩管理系统系统退出、录入成绩、计算总分、计算平均分、等级评定、成绩修改、成绩排序功能。选择0:可以退出系统;
选择1:可以输入学生人数,并完成指定学生人数成绩输入。成绩可进行[0,100]的验证。
选择2、3:相应进入计算总分和计算平均分界面。首先判断学生人数是否为0。如果人数为0,先提示输入学生人数,然后调用录入成绩模块进行学生成绩录入,然后计算总分和平均分。
选择4:进入成绩评定界面。首先判断学生人数是否为0。如果人数为0,先提示输入学生人数,然后根据每名学生的平均分给出相应的成绩等级认定(包括不及格、及格、中等、良好、优秀5个等级)。
选择5:进入成绩修改界面。首先输入要修改的学生学号,利用循环在学生系统中查找该名学生。如果找不到会给出相应提示,找到后会先输出该名学生修改前成绩,然后提示输入要修改的成绩,并打印输出修改后的成绩。
选择6:进入成绩排序界面。首先输出原系统中所有学生的成绩,然后根据冒泡排序进行排序,并输出根据总分从高到低排好序的学生成绩[5]。
五、结论
本文利用C语言设计并完成了一个学生成绩管理系统程序,经测试该程序运行界面良好,可操作性强,到达了最初设计的目的。最终将该系统采取项目制教学方法应用到C语言程序设计课程中,通过做中学方式引入相关知识点讲解,使学生对所学知识点更加容易理解,极大调动了学生的学习积极性,培养了学生的创新、自主学习能力和团队协作能力,取得了良好的教学效果。
参考文献
[1]李桂珍.基于C语言的学生成绩管理系统的设计与实现[J].电子制作,2021(04):61-63.
[2]王鑫,胡辉.基于C语言的学生成绩管理系统的实现[J].河北理科教学研究,2019(04):45-46.
[3]钟玲玲,刘冬雪,黄小平,吴密.基于C语言的学生信息管理系统设计与实现[J].河南科技学院学报(自然科学版),2019,47(04):62-67+78.
[4]郭博,舒娟,史晓凤,韩波,刘华明.基于C#的学生成绩管理系统的设计与实现[J].陇东学院学报,2018,29(05):13-15.
[5]彭莉.基于C语言的学生成绩管理系统的实现[J].武汉工程职业技术学院学报,2017,29(04):36-39.
(烟台南山学院 山东 烟台 265713)