学生成绩管理系统.docx
- 文档编号:27159791
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:28
- 大小:137KB
学生成绩管理系统.docx
《学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统.docx(28页珍藏版)》请在冰豆网上搜索。
学生成绩管理系统
1问题描述
学生成绩管理系统
学生成绩管理系统
学生信息包括学期、学号、班级、姓名,和语文、数学、英语、计算机四门课成绩。
并按班级、学期查询学生成绩,并能录入、修改,求学生平均成绩和总成绩,输出不及格科目,按班级输出成绩单,按班级对学生成绩进行排序。
2系统分析
2.1题目要求
学生成绩管理系统设计
学生成绩信息包括:
学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)。
主要功能:
(1)能按学期、按班级完成对学生成绩的录入、修改
(2)能按班级统计学生的成绩,求学生的总分及平均分,设计并输出统计报表
(3)能查询学生成绩,不及格科目及学生名单
(4)能按班级输出学生的成绩单
(5)能按班级,按课程,对学生成绩进行排序。
要求:
使用二进制文件方式存储数据,系统以菜单方式工作
2.2算法设计
(1)创建主菜单
(2)实现学生成绩信息录入
(3)实现学生成绩信息修改
(4)实现学生成绩信息查询
(a)按学期、班级查询学生的成绩
(b)按学号查询学生的成绩
(c)查询不及格的科目和学生名单
(5)实现学生成绩成绩统计
(a)按班级统计学生的总分、平均分
(b)按班级、课程对学生的总分进行排序
(6)实现学生成绩信息浏览
2.3流程图
2.4关键问题
难点:
指针p、函数。
解决:
无条件循环
指针p指向新开辟的单元
指针p是否为空
是否
输入学号>
输出>是否为@
内存是否
溢出输入姓名>
停止(0<3)
输入输入成绩
返回>;
菜单>()3;
主函数:
()
新建函数:
*()
输入函数*()
显示函数:
*(*)
删除函数:
*(*)
按名字寻找函数:
(*)
保存函数:
(*)
按总分排序函数:
*(*)
计算总分和均分函数:
(*)
修改函(*)
按学号排序函数:
*(*h)
3系统实现
3.1题目一
(源代码)
<>
<>
<>
N4
{
;定义学期(1或2)
;学号
;定义班级(1或2班)
[9];姓名
;定义四门成绩
;
;
;
*;
};
0;
******************************************************************************
函数功能:
创建链表,录入学生的相关信息,此函数返回一个指向链表头的指针
******************************************************************************
*()
{
*,*,*;
c;
();
("是否要输入信息():
");
("");
(*)(());
;
('y')
{
;
(*)(());
("请输入要录入学生信息的学期:
");
();
("">);学期只能为1或2
(>1>2)
{
();
("输入错误!
请重新输入:
");若学期不为1或2,则输入有误
("">);
}
("请输入要录入学生成绩信息的班级:
");
();班级只能为1或2
("">);
(>1>2)
{
();
("输入错误!
请重新输入:
");
("">);
}
("请输入该班的学生信息!
\n");输入学生信息(包括学号、四门成绩)
("请输入学生学号:
");
();
("">);
("请输入学生姓名:
");
();
("">);输入学生姓名
("请输入语文成绩(0-100):
");输入四门成绩
("">);
("请输入数学成绩(0-100):
");
("">);
("请输入英语成绩(0-100):
");
("">);
("请输入计算机成绩(0-100):
");
("">);
(1)创建新结点
;
>;
;
("是否还要输入信息():
");
();
("");
}
>;链表结尾
();链表返回头指针
}
******************************************************************************
函数功能:
实现对学生信息的修改
******************************************************************************
(*)
{
*;
;
[9];定义一个数组,存储学生的姓名
;
()("出错!
请先输入学生信息!
");
(1)设置循环控制
{
("\t\t\t请选择要修改的信息!
\t\n");
("\t\t\\n");输出要修改的信息
("\t\t\ta、学号:
\n");
("\t\t\tb、姓名:
\n");
("\t\t\tc、班级:
\n");
("\t\t\td、成绩:
\n");
("\t\t\\n");
();清盘
("");
('a')
{
("你要修改的信息是:
学号!
\n");按姓名修改学号
("请输入你要修改的学生姓名:
");
("");
((>)0)
{
("请输入该学生新的学号:
");输入新学号
("">);
}
("无法查找到该学生!
\n");找不到信息
}
('b')按学号修改该班级学生的信息
{
("你要修改的信息是:
姓名!
\n");
("请输入你要修改的学生的学号:
");
("");
(>)输入学号,判断条件
{
("请输入该学生的姓名:
");
("">);输入要做修改的学生姓名
}
("无法查找到该学生!
\n");找不到信息
}
('c')
{
("你要修改的信息是:
班级!
\n");按学号修改班级
("请输入你要修改的学生的学号:
");
("");
(>)
{
("请输入该学生的班级:
");输入要做修改的班级
("">);
}
("无法查找到该学生!
\n");找不到信息
}
('d')
{
("你要修改的信息是:
成绩!
\n");按学号修改成绩
("请输入你要修改的学生的学号:
");
("");
(>)输入学号
{
("请输入该学生新的语文成绩:
");
("">);
("请输入该学生新的数学成绩:
");
("">);输入新的四门成绩
("请输入该学生新的英语成绩:
");
("">);
("请输入该学生新的计算机成绩:
");
("">);
}
("无法查找该学生的信息!
\n");找不到信息
}
("出错!
\n");
>;
("是否还要继续修改信息():
");判断,是否还要修改信息,跳出循环
();
((())'n');
}
}
******************************************************************************
函数功能:
按照学号查询学生信息
******************************************************************************
(*)
{按学号查询学生的成绩
*p;
;
0;
("请输入你要查询的学生学号:
\n");
("");
(>)输入学号,判断条件
{
("");
("\t学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");
("\n");
("\t">);
("\t">);
("\t">);输出学生的班级
("\t">);
("%1f\t">);输出四门成绩
("%1f\t">);
("%1f\t">);
("%1f\t">);
2;
}
(0)
("没找到该学生的信息!
");找不到信息
}
(*)
{
0;
*;
()按班级查询学生的成绩
{
("请输入你要查询成绩的班级:
");
("");
(>)
{
("请输出班所有同学的成绩:
");
("");
("\t学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");
("\n");
("\t">);输出要查询成绩的班级
("\t">);输出查询成绩的学生学号
("\t">);输出要查询成绩的班级
("\t">);输出要查询成绩的学生姓名
("%1f\t">);
("%1f\t">);输出四门成绩
("%1f\t">);
("%1f\t">);
("\n");
2;
}
>;
(0)
("没找到学生信息!
");输出错误,找不到信息
}
}
(*)定义按学期查找信息的函数
{
0;
*;
()设置循环控制
{
按学期查询学生的成绩
("请输入你要查询成绩的学期:
");
("");
(>)
{
("请输出第学期所有班级的信息:
");
("");
("\t学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");
("\n");
("\t">);
("\t">);
("\t">);
("\t">);输出姓名
("%1f\t">);
("%1f\t">);
("%1f\t">);输出四门成绩
("%1f\t">);
("\n");
2;
}
>;
(0)
("没找到学生信息!
");找不到信息
}
}
(*)定义一个函数,查找不及格的学生
{
*p;
;
0;
;
("请输入要查询成绩的学生学号:
");
("");
(>)
{
("正在查询该学生的成绩,请稍侯>>>>>\n");查询学生的成绩,输出不及格的科目
()
{
(><60)
{
("该学生的语文不及格!
\n");
("\n");
;
}
(><60)输出该学生的不及格科目
{
("该学生的数学不及格!
\n");
("\n");
;
}
(><60)
{
("该学生的英语不及格!
\n");对各门成绩进行判断
("\n");
("\n");
;
}
(><60)
{
("该学生的计算机不及格!
\n");
("\n");
;
}
(i>0)
("同学共有门成绩不及格!
\n学号是\n">>);
("\n");
>>>>;
(<240)
("不及格学生名单为">);输出不及格的学生名单
>;
}
}
}
(*)定义一个查询学生信息的函数,调用各子函数,进行查询
{
;
*;
()设置循环控制条件
{输出查询方式
("\t\t\t你要选择何种方式查询成绩!
\n");
("\\n");
("\t\t\ta、学号:
\n");
("\t\t\tb、班级:
\n");
("\t\t\tc、学期:
\n");
("\t\t\td、不及格的学生:
\n");
("\\n");
();
("");
(k)
{
'a'();调用学号函数
'b'();
'c'();
'd'();
}
("\n");
("是否还要继续查询学生的信息():
");
();
((())'n');跳出循环,返回主菜单
}
}
******************************************************************************
函数功能:
对学生成绩进行统计,按班级求总分及平均分
******************************************************************************
(*)对该班级的学生成绩求总分、平均分
{
00;
0;
*;
()
{
>>>>;输出学生的总分和平均分成绩
;
("第个学生的总分为1f!
\n"1);
("\n");
("第个学生的平均分1f!
\n"1);
("\n");
("已经统计了第个学生的成绩!
\n"1);统计完毕
("\n");
;
>;指向下一个结点
}
}
(*)对该班级的学生成绩进行排序
{
0;
a[10];把结点信息输入到数组,然后排序
*;
()
{
a[i]>>>>;
;
>;
}
(0<4)用数组排序
(0<3)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统