java学生成绩管理系统课程设计.docx
《java学生成绩管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《java学生成绩管理系统课程设计.docx(32页珍藏版)》请在冰豆网上搜索。
java学生成绩管理系统课程设计
1设计目的及内容要求1
2系统总体设计1
3系统详细设计2
4运行结果及分析17
致谢21
参考文献22
简单学生成绩管理系统的设计与实现
1设计目的及内容要求
1、设计目的:
巩固和加深学生对高级语言程序设计课程的基本知识的理解和掌握,掌握语言编程和程序调试的基本技能,利用语言进行基本的软件设计,提高运用语言解决实际问题的能力。
2、内容要求
实现学生成绩的管理(增、删、改、查询、持久化、成绩排序、成绩统计等功能),在文件中增加、删除、学生信息,根据学号查询、修改学生信息,统计功能求每个人的总分并按从高到低排序,通过这些操作对文件中的信息保存。
2系统总体设计
成功登陆系统以后,出现成绩管理界面,系统初始化,可对学生成绩进行增加、删除、查询、修改、统计,进入相应界面进行成绩管理,退出系统自动保存本次操作内容,保存信息。
简易流程图:
3系统详细设计
①
创建类,设置变量及对应方法
代码:
;
;
{
;
;
;
;
;
0;
(){
}
(,,,,
){
();
=;
=;
=;
=;
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
"["++","++","+
+","++","++","+
+"]";
}
}
②
管理类,创建对应方法,实现对对象的操作(增、删、改、查询、持久化、成绩排序、成绩统计等功能)供其对象调用。
代码
;
;
;
;
;
;
;
;
;
;
;
{
<><>();
=("");
添加
(s){
(s);
}
删除
del(n){
(0<()){
((i)())
(i);
}
}
求总分
(){
(0<()){
(i)((i)()(i)()(i)());
}
}
排序
(){
(i=0;i<();){
(j=0;j<()-1;){
((j)()<
(1)()){
(j);
(j,
(1));
(1,()o);
}
}
}
}
(){
(0<()){
((i));
}
}
(){
"["++"]";
}
输出流
()
{
=;
{
=(());
();
();
}(e){
();
}(e){
();
}
}
输入流
()
{
=;
{
=(());
{
=(<>)();
}(e){
;
}
();
}(e){
=("");
}(e){
();
}
}
查找
(n)
{
(0<()){
((i)()){
(i);
}
}
;
}
}
③
登陆界面及成绩管理的所有界面,同过创建的对象,调用其方法实现成绩管理
代码:
;
.*;
.*;
;
;
.*;
{
f1;
f2;
b1;
b2;
b3;
();
登陆界面
(){
()容器
((3,1))三行一列布局
l1("用户名");
l2("密码");
p1();
p2();
p3();
f1(10);
f2(10);
f2('*')回显字符为*
b1("登录");
b2("重置");
b3("退出");
p1(l1)第一行添加1
p1(f1);
p2(l2);
p2(f2);
p3(b1);
p3(b2);
p3(b3);
(p1);
(p2);
(p3);
b1(());
b2(());
b3(());
}
{
(e)
{
((f1())("")(f2())("123456"))
{
()初始化,从文件读入信息
1=();
1(200,200,300,300);
1();
}
(,"用户名或密码错误,请重新登录!
");
}
}
{
(e)
{
f1("");
f2("");
f1();
}
}
{
(e)
{
()();
(3){
(0);
}
}
}
主函数程序开始
([]){
();
("系统登录");
(200,200,300,300);
();
();
}
信息管理界面内部类进行初始化和保存
{
,,;
()
{
c=();
((3,1));
(("",13));
2=();
1=();
1=("欢迎进入成绩管理");
1(("",13));
1();
(1);
添加按钮
=("查询");
2();
=("增加");
2();
=("删除");
2();
=("退出");
2();
=("修改");
1();
=("统计");
1();
(2);
(1);
();
();
();
();
();
();
();
}
(e)
{
(()){
f=();
}
(()){
f=();
}
(()){
d=();
}
(()){
();
}
(()){
();
}
(()){
();
}
}
()
{
();
(,"信息已保存");
();
}
}
增加信息界面内部类,捕获文本框中信息创建对象,添加到中,如果已存在该学号给出提示信息,并重新添加。
{
,,,;
b1,b2,b3;
,,;
(){
("添加学生信息");
c2=();
c2((3,1));
=((5,2));
=(());
1=("添加学生信息",);
1(("",,20));
c2
(1);
=(30)30列文本框
=(30);
=(30);
=(30);
=(30);
(("学号",))添加标签学号写在标签中间
()添加文本框
(("姓名",));
();
(("语文",));
();
(("数学",));
();
(("",));
();
c2();
b1=("添加");
b2=("清除");
b3=("退出");
(b1);
(b2);
(b3);
c2();
添加监听
b1();
b2();
b3();
(200,200,600,400);
();
("添加学生信息");
}
(e){
(()b1){
{
();
}(e1){
e1();
}(e1){
e1();
}
}
(()b2){
();
}
(()b3){
();
}
}
(),{
=();
=();
=();
=();
=();
(()0()0()0
()0()0)
(,"请添加完全信息");
{
((),
()()());
0;
(0<()){
((i)()()){
1;
}
}
(0){
(a);
(,"添加成功");
}
{
(,"已存在");
}
}
}
(){
("");
("");
("");
("");
("");
}
}
查询信息界面内部类,根据输入的学号,在中查找对应学号的学生信息,分别输出
{
,,,;
;
b1,b2;
(){
c1=();
c1((4,1));
1=("查询学生信息",);
0=("请输入你的学号");
=((2,1));
(1);
(0);
c1();
p1=();
=(10);
p1();
c1(p1);
p2=();
b1=("查询");
b2=("退出");
b1();
b2();
p2(b1);
p2(b2);
c1(p2);
=((4,2));
=(30);
=(30);
=(30);
=(30);
(("姓名",));
();
(("语文",));
();
(("数学",));
();
(("",));
();
c1();
();
(200,200,400,300);
}
(e){
(()b1){
=();
0;
(0<())
{
(()(i)())
{
((i)());
(((i)()));
(((i)()));
(((i)()));
1;
}
}
(0){
(,"查无此人");
}
}
(()b2){
();
}
}
}
删除信息界面,通过输入的学号进行查找并在中移除
{
;
;
1;
;
(){
c3=();
c3((3,1));
c3(("",13));
p1=();
p2=();
1=("删除学生信息");
1(("",13));
1();
c3
(1);
2=("请输入学号");
1=(10);
p1
(2);
p1
(1);
c3(p1);
=("确定");
=("退出");
p2();
p2();
c3(p2);
();
();
("删除学生信息");
(200,200,400,300);
();
}
(e){
(()){
();
}
(()){
();
}
}
(){
=1();
(());
(,"删除成功");
}
}
统计界面,对中所有对象进行求总分,并按总分从达到小排序
{
b12;
t;
(){
c1=();
c1((3,1));
p1();
1=("统计信息",);
p1
(1);
c1(p1);
();
(t);
c1();
p3();
b1=("统计");
b2=("退出");
p3(b1);
p3(b2);
c1(p3);
(200,200,400,300);
();
b1();
b2();
}
(e){
(()b1)
{
();
();
[][100];
s1="总分从大到小\n姓名学号数学语文总分";
(0<()){
s[i](i)()+""(i)()+""(i)()
+""(i)()+""(i)()+""(i)();
}
(0<()){
s11+"\n"[i];
}
(s1);
}
(()b2)
{
();
}
}
}
修改信息界面,捕获输入的学号,查找该生信息,直接在文本框中修改,类似添加功能冲新添加该生信息
{
,,,;
b123;
(){
c4=();
c4((4,1));
c4(("",13));
=();
1=();
2=((4,2));
=();
11=("需要修改的学号");
(15);
(11);
();
c4();
b1("查找");
1(b1);
c4
(1);
21=("姓名",);
22=("数学",);
23=("语文",);
24=("",);
(22);
(22);
(22);
(22);
2(21);
2();
2(22);
2();
2(23);
2();
2(24);
2();
c4
(2);
b2("修改");
b3("退出");
(b2);
(b3);
c4();
b1();
b2();
b3();
("修改信息");
(200,200,600,400);
();
}
(e){
(()b1){
(0<()){
((())(i)()){
((i)());
(((i)()));
(((i)()));
(((i)()));
}
}
}
(()b2){
(()0()0
()0()0)
(,"请添加完全信息");
{
((()));
(()(()),
(())(()),
(()));
(a);
(,"修改成功");
}
}
(()b3){
();
}
}
}
}
4运行结果及分析
1、登陆:
输入用户名和密码,通过程序判断,若正确则进入成绩管理系统!
2、成绩管理界面
对系统进行初始化,读出文件信息,监听按钮,创建其它界面对象,弹出界面
3、查询界面
通过对输入的学号进行查询,将查到的对象的相应信息输出到文本框中
4、添加信息
输入学生信息,监听添加按钮,实现向文件中添加信息,若学号以存在需要重新添加
5、删除信息
输入需要删除的学生的学号,删除对应学号的学生信息
6、修改信息
输入学生学号,查找所有成绩,在文本框中直接修改按钮,点击修改及完成修改功能
7、统计信息
进入统计界面后,点击统计按钮,实现对学生成绩求总分,并按总分从大到小输出到文本区域中
8、退出
点击成绩管理界面的退出按钮,会对本次的所有操作进行保存
致谢
这次课程设计能够顺利的完成,要感谢老师的教导和同学的无私的帮助。
首先是谭小波老师,为我的设计改进提供了很多宝贵的意见,还有和同学一起讨论帮我解决了几个错误,老师上课时讲得详细并严格要求我们,为我们的课程设计起了促进作用。
在此对老师和给予我帮助的同学表示最诚挚的感谢!
参考文献
[1]张海藩.软件工程导论.清华大学出版社,2010
[2]沈洪,施明利.程序设计案例汇编.清华大学出版社,2010
[3]孟德欣.程序设计.清华大学出版社,2011
[4]石志国.数据库编程.清华大学出版社,2009
[5]张友生.软件体系结构原理、方法与实践.清华大学出版社,2010