数据结构方面有关论文范文集,与学生成绩管理系统相关论文网
本论文是一篇数据结构方面有关论文网,关于学生成绩管理系统相关在职研究生毕业论文范文。免费优秀的关于数据结构及课程设计及学生方面论文范文资料,适合数据结构论文写作的大学硕士及本科毕业论文开题报告范文和学术职称论文参考文献下载。
学生成绩管理系统
一、设计目的
通过课程设计,了解并初步掌握设计,实现较大系统的完整过程,包括系统分析,编码设计,系统集成,以及调试分析,熟练掌握数据结构的选择,设计,实现以及操作方法,为进一步的应用开发打好基础.
数据结构是实践性很强的课程.课程设计是加强学生实践能力的一个强有力手段.课程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告.严格实施课程设计这一环节,对于学生基本程序设计素养的培养和软件工作者工作作风的训练,将起到显着的促进作用.
二、问题描述
设计,实现一个管理学生成绩的程序,为用户提供以下几种操作:(1)对学员的成绩的录入和输出(2)实现插入,删除,查找,排序,浏览,分类合计,保存,读取等操作
三、需求分析
该程序目的在于实现一个小的管理软件,以对学生成绩进行一些基本操作,此程序规定:
1.在程序中输入学员的学生证号时,需输入长度在4位以内的数字,输入学员姓名时需输入一个字符串,输入学科成绩时需输入一个0到100的整型数据,在选择功能时,应输入与所选功能对应的一个整型数据.
2.程序的输出信息主要是:主菜单,子菜单提供功能选择,对所有学员的信息和成绩的打印和以表的形式排序输出.
3.程序的功能包括:提供对学员信息的录入,插入,删除,查找,其中删除和查找可根据学号与姓名进行分类选择,并提供了对成绩的分类统计,通过对平均成绩从高到低实现排序输出,数据的保存和读取以及程序的安全退出.
四、概要设计
系统用到的数据类型定义:
1.structstudent
{}stu[50],
数据对象:结构体
集合学生的系列属性,包括学号,姓名,3门课成绩,总分,平均分
1)系统中子程序及功能要求:
1.voidmune(),//主菜单函数
2.voidinput(),//录入函数
3.voidinsert(),//插入函数
4.voiddel(),//删除函数
5.voiddelNo(),//按学生证号删除
6.voiddelName(),//按姓名删除
7.voidselect(),//查找函数
8.voidselectNo(),//按学生证号查找
9.voidselectName(),//按姓名查找
10.voidsort(),//冒泡排序函数,以平均成绩从高到低排列所有学生信息
11.voiddisplay(),//制表格式函数,表格形式打印输出
12.voidtotal(),//分类合计函数,统计学科成绩,总成绩和平均成绩
13.voidsave(),//保存函数,保存数据到指定文件
14.voidload(),//读取函数,读取指定文件的数据
2)子程序间的调用关系
子程序3:调用子程序1
子程序4:调用子程序5,子程序6
子程序7:调用子程序8,子程序9
3系统调用子程序的实现方法:
在主函数下,开关switch.通过对case0,1,2,3,4,5,6,7,8,9的选择,再通过子菜单的选择,调用相应的函数方法,每个函数基本上实现一个功能.
五、详细设计
创建学生成绩管理的伪码描述如下:
structstudent
{
学生证号,
姓名,,
微机原理成绩,
离散数学成绩,
数据结构成绩,
总成绩,
平均成绩,
}stu[50],/*定义一个学生的所有属性*/
//定义全局变量
IntI,j,
Intcount等于0,
(循环变量,数组下标变量)
//声明所有的函数.
voidmune(),//主菜单函数
voidinput(),//录入函数
voidinsert(),//插入函数
voiddel(),//删除函数
voiddelNo(),//按学生证号删除
voiddelName(),//按姓名删除
voidselect(),//查找函数
voidselectNo(),//按学生证号查找
voidselectName(),//按姓名查找
voidsort(),//冒泡排序函数
voiddisplay(),//制表格式函数
voidtotal(),//分类合计函数
voidsave(),//保存函数
voidload(),//读取函数
//主函数入口/*主菜单界面*/
voidmain()
{
intin,//选择功能的变量
charch等于'y',//选择是否继续时的变量,(y/n)
do
{
mune(),//主菜单
scanf("%d",&,in),
if(in<,0||in>,9)
{
出错
continue,
}
elseif(in等于等于0){
退出程序
}
switch(in)
{
case1:
录入
case2:
插入
case3:
删除
case4:
查找
case5:
制表浏览
case6:
排序
case7:
分类合计
case8:
保存
case9:
读取
default:
break,
}
}while(1),
}
定义所有函数
选择0退出程序
选择1调用录入函数(voidinput()),开始输入学生信息数据
选择2调用插入函数(voidinsert()),开始插入数据
选择3调用删除函数(voiddel()),进入子菜单
继续选择
选择1:调用删除函数(voiddelNO()),按学生证号删除学员信息
选择2:调用删除函数(voiddelName()),按学生姓名删除学员信息
选择3:返回主菜单
选择4调用查找函数(voidselect()),进入子菜单
继续选择
选择1:调用查找函数(voidselectNO()),按学生证号查找学员信息
选择2:调用查找函数(voidselectName()),按学生姓名查找学员信息
选择3:返回主菜单
选择5调用浏览函数,(voiddisplay()),以表格形式输出未经排序的所有学生信息数据
选择6调用排序函数(voidsort()),以表格形式输出经过排序后的所有学生信息数据(按平均分)
选择7调用合计函数(voidtotal()),统计3门学科的成绩总分和平均分
选择8调用存储函数(voidsave()),将数据存储到指定文件下
选择9调用读取函数(voidload()),提取指定文件下的数据
六、测试分析
按照附录中的测试数据,得出如下测试,分析结果:
****************************************
|学生成绩系统主菜单界面|
|1.录入学生成绩6.排序学生成绩|
|2.插入学生成绩7.合计学生成绩|
|3.删除学生成绩8.存储学生成绩|
|4.查找学生成绩9.读取学生成绩|
|5.浏览学生成绩0.安全退出系统|
|--------------->,学生成绩管理程序<,----------------|
****************************************
请在0~9之间选择:
录入学生成绩.
(选择y或者Y继续输入)
(选择Y或者y继续输入)
-----------------请输入学员信息---------------------------------
学生证号:(输入长度在4位以内的数字)1
姓名:(输入一个字符串)oo
微机原理(成绩):(输入一个0~100的数字)80
离散数学(成绩):(输入一个0~100的数字)80
数据结构(成绩):(输入一个0~100的数字)80
总成绩:240
这篇论文地址:http://www.sxsky.net/xie/070172613.html
平均成绩:80.000000
是否继续输入(y/n)n(选择Y或者y继续输入)
插入学生成绩.
(选择Y或者y继续插入)
-------------------请输入要插入的学员信息---
数据结构方面有关论文范文集,与学生成绩管理系统相关论文网参考文献资料: