欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    java学生成绩管理系统课程设计3118.pdf

    • 资源ID:83917175       资源大小:748.40KB        全文页数:28页
    • 资源格式: PDF        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    java学生成绩管理系统课程设计3118.pdf

    实用标准文档 文案大全 目 录 1 设计目的及内容要求.1 2 系统总体设计.1 3 系统详细设计.2 4 运行结果及分析.17 致谢.21 参考文献.22 实用标准文档 文案大全 简单学生成绩管理系统的设计与实现 1 设计目的及内容要求 1、设计目的:巩固和加深学生对高级语言程序设计课程的基本知识的理解和掌握,掌握 java语言编程和程序调试的基本技能,利用 java语言进行基本的软件设计,提高运用 java语言解决实际问题的能力。2、内容要求 实现学生成绩的管理(增、删、改、查询、持久化、成绩排序、成绩统计等功能),在文件中增加、删除、学生信息,根据学号查询、修改学生信息,统计功能求每个人的总分并按从高到低排序,通过这些操作对文件中的信息保存。2 系统总体设计 成功登陆系统以后,出现成绩管理界面,系统初始化,可对学生成绩进行增加、删除、查询、修改、统计,进入相应界面进行成绩管理,退出系统自动保存本次操作内容,保存信息。简易流程图:登陆 成绩管理界面 增加 删除 查询 修改 统计 退出 实用标准文档 文案大全 3 系统详细设计 创建 Student类,设置变量及对应方法 Student.java代码:package keshe;import java.io.Serializable;public class Student implements Serializable private String name;private int num;private int yuwen;private int shuxue;private int java;private int sum=0;public Student()public Student(String name,int num,int yuwen,int shuxue,int java)super();this.name=name;this.num=num;this.yuwen=yuwen;this.shuxue=shuxue;this.java=java;public String getName()return name;public void setName(String name)this.name=name;public int getNum()return num;public void setNum(int num)this.num=num;public int getYuwen()return yuwen;public void setYuwen(int yuwen)this.yuwen=yuwen;实用标准文档 文案大全 public int getShuxue()return shuxue;public void setShuxue(int shuxue)this.shuxue=shuxue;public int getJava()return java;public void setJava(int java)this.java=java;public int getSum()return sum;public void setSum(int sum)this.sum=sum;public String toString()return Student name=+name+,num=+num+,yuwen=+yuwen +,shuxue=+shuxue+,java=+java+,sum=+sum +;Student管理类 StuC,创建对应方法,实现对 Student对象的操作(增、删、改、查询、持久化、成绩排序、成绩统计等功能)供其对象调用。StuC.java代码 package keshe;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.FileReader;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.util.ArrayList;public class StuC ArrayList al=new ArrayList();实用标准文档 文案大全 File file=new File(e:/mydata.dat);/添加 public void adds(Student s)al.add(s);/删除 public void del(int n)for(int i=0;ial.size();i+)if(al.get(i).getNum()=n)al.remove(i);/求总分 public void sum()for(int i=0;ial.size();i+)al.get(i).setSum(al.get(i).getJava()+al.get(i).getShuxue()+al.get(i).getYuwen();/排序 public void sort()for(int i=0;i al.size();i+)for(int j=0;j al.size()-1-i;j+)if(al.get(j).getSum()al.get(j+1).getSum()Object o=al.get(j);al.set(j,al.get(j+1);al.set(j+1,(Student)o);public void paint()for(int i=0;ial.size();i+)System.out.println(al.get(i);public String toString()return StuC al=+al+;/输出流 public void stor()ObjectOutputStream out=null;实用标准文档 文案大全 try out=new ObjectOutputStream(new FileOutputStream(file);out.writeObject(al);out.close();catch(FileNotFoundException e)e.printStackTrace();catch(IOException e)e.printStackTrace();/输入流 public void read()ObjectInputStream in=null;try in=new ObjectInputStream(new FileInputStream(file);try al=(ArrayList)in.readObject();catch(ClassNotFoundException e)al=null;in.close();catch(FileNotFoundException e)File file=new File(e:/mydata.dat);catch(IOException e)e.printStackTrace();/查找 public Student find(int n)for(int i=0;ial.size();i+)if(al.get(i).getNum()=n)return al.get(i);return null;实用标准文档 文案大全 登陆界面及成绩管理的所有界面,同过创建 StuC的对象,调用其方法实现成绩管理 代码:package keshe;import java.awt.*;import java.awt.event.*;import java.io.FileNotFoundException;import java.io.IOException;import javax.swing.*;public class Login extends JFrame private TextField f1;private TextField f2;private JButton b1;private JButton b2;private JButton b3;StuC scs=new StuC();/登陆界面 public Login()Container cp=getContentPane();/容器 cp.setLayout(new GridLayout(3,1);/三行一列布局 Label l1=new Label(用户名);Label l2=new Label(密 码);Panel p1=new Panel();Panel p2=new Panel();Panel p3=new Panel();f1=new TextField(10);f2=new TextField(10);f2.setEchoChar(*);/回显字符为*b1=new JButton(登录);b2=new JButton(重置);b3=new JButton(退出);p1.add(l1);/第一行添加 label 1 p1.add(f1);p2.add(l2);p2.add(f2);p3.add(b1);p3.add(b2);p3.add(b3);cp.add(p1);cp.add(p2);cp.add(p3);实用标准文档 文案大全 b1.addActionListener(new Enter();b2.addActionListener(new ReWrite();b3.addActionListener(new Close();class Enter implements ActionListener public void actionPerformed(ActionEvent e)if(f1.getText().equals(yazhou)&(f2.getText().equals(123456)scs.read();/初始化,从文件读入信息 XueSheng frame1=new XueSheng();frame1.setBounds(200,200,300,300);frame1.setVisible(true);else JOptionPane.showMessageDialog(null,用户名或密码错误,请重新登录!);class ReWrite implements ActionListener public void actionPerformed(ActionEvent e)f1.setText();f2.setText();f1.requestFocus();class Close implements ActionListener public void actionPerformed(ActionEvent e)JButton bt=(JButton)e.getSource();if(bt=b3)System.exit(0);/主函数 程序开始 public static void main(String args)Login log=new Login();log.setTitle(系统登录);log.setBounds(200,200,300,300);log.setBackground(Color.blue);log.setVisible(true);/信息管理界面内部类 进行初始化和保存 class XueSheng extends JFrame implements ActionListener 实用标准文档 文案大全 private JButton cx,zj,tc,sc,xg,tj;public XueSheng()Container c=this.getContentPane();c.setLayout(new GridLayout(3,1);c.setFont(new Font(true,Font.TRUETYPE_FONT,13);JPanel panel2=new JPanel();JPanel panel1=new JPanel();JLabel label1=new JLabel(欢迎进入成绩管理,SwingConstants.CENTER);label1.setFont(new Font(true,Font.TRUETYPE_FONT,13);label1.setForeground(Color.blue);c.add(label1);/添加按钮 cx=new JButton(查询);panel2.add(cx);zj=new JButton(增加);panel2.add(zj);sc=new JButton(删除);panel2.add(sc);tc=new JButton(退出);panel2.add(tc);xg=new JButton(修改);panel1.add(xg);tj=new JButton(统计);panel1.add(tj);c.add(panel2);c.add(panel1);cx.addActionListener(this);zj.addActionListener(this);sc.addActionListener(this);xg.addActionListener(this);tc.addActionListener(this);tj.addActionListener(this);this.setVisible(true);public void actionPerformed(ActionEvent e)if(e.getSource()=cx)Find f=new Find();if(e.getSource()=zj)AddFI f=new AddFI();if(e.getSource()=sc)实用标准文档 文案大全 Delet d=new Delet();if(e.getSource()=xg)XiuGai x=new XiuGai();if(e.getSource()=tc)shutDown();if(e.getSource()=tj)Tongji t=new Tongji();private void shutDown()scs.stor();JOptionPane.showMessageDialog(null,信息已保存);this.dispose();/增加信息界面内部类,捕获文本框中信息创建 Student对象,添加到 Arraylist中,如果已存在该学号/给出提示信息,并重新添加。class AddFI extends JFrame implements ActionListener private JTextField STNOText,SNAMEText,MAText,CHIText,JAVAText;private JButton b1,b2,b3;private String STNO,SNAME,MAT,CHI,JAVA;public AddFI()super(添加学生信息);Container c2=this.getContentPane();c2.setLayout(new GridLayout(3,1);JPanel center=new JPanel(new GridLayout(5,2);JPanel low=new JPanel(new FlowLayout();JLabel label1=new JLabel(添加学生信息,SwingConstants.CENTER);label1.setFont(new Font(TRUE,Font.TRUETYPE_FONT,20);c2.add(label1);STNOText=new JTextField(30);/30列文本框 SNAMEText=new JTextField(30);CHIText=new JTextField(30);MAText=new JTextField(30);JAVAText=new JTextField(30);center.add(new JLabel(学号,SwingConstants.CENTER);/添加标签学号写在标签中间 center.add(STNOText);/添加文本框 center.add(new JLabel(姓名,SwingConstants.CENTER);center.add(SNAMEText);实用标准文档 文案大全 center.add(new JLabel(语文,SwingConstants.CENTER);center.add(CHIText);center.add(new JLabel(数学,SwingConstants.CENTER);center.add(MAText);center.add(new JLabel(java,SwingConstants.CENTER);center.add(JAVAText);c2.add(center);b1=new JButton(添加);b2=new JButton(清除);b3=new JButton(退出);low.add(b1);low.add(b2);low.add(b3);c2.add(low);/添加监听 b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);this.setBounds(200,200,600,400);this.setVisible(true);this.setTitle(添加学生信息);public void actionPerformed(ActionEvent e)if(e.getSource()=b1)try addFI();catch(FileNotFoundException e1)e1.printStackTrace();catch(IOException e1)e1.printStackTrace();if(e.getSource()=b2)clearForm();if(e.getSource()=b3)this.dispose();private void addFI()throws FileNotFoundException,IOException STNO=STNOText.getText();SNAME=SNAMEText.getText();CHI=CHIText.getText();MAT=MAText.getText();实用标准文档 文案大全 JAVA=JAVAText.getText();if(STNO.length()=0|SNAME.length()=0|MAT.length()=0|JAVA.length()=0|CHI.length()=0)JOptionPane.showMessageDialog(this,请添加完全信息);else Student a=new Student(SNAME,Integer.parseInt(STNO),Integer.parseInt(CHI),Integer.parseInt(MAT),Integer.parseInt(JAVA);int b=0;for(int i=0;iscs.al.size();i+)if(scs.al.get(i).getNum()=Integer.parseInt(STNO)b=1;if(b=0)scs.adds(a);JOptionPane.showMessageDialog(this,添加成功);else JOptionPane.showMessageDialog(this,已存在);private void clearForm()STNOText.setText();SNAMEText.setText();MAText.setText();CHIText.setText();JAVAText.setText();/查询信息界面内部类,根据输入的学号,在 arraylist中查找对应学号的学生信息,分别输出 class Find extends JFrame implements ActionListener private JTextField STNOText,SNAMEText,MAText,CHIText,JAVAText;private String STNO;private JButton b1,b2;public Find()Container c1=this.getContentPane();c1.setLayout(new GridLayout(4,1);JLabel label1=new JLabel(查询学生信息,SwingConstants.CENTER);JLabel label0=new JLabel(请输入你的学号,SwingConstants.CENTER);JPanel pp=new JPanel(new GridLayout(2,1);实用标准文档 文案大全 pp.add(label1);pp.add(label0);c1.add(pp);JPanel p1=new JPanel();STNOText=new JTextField(10);p1.add(STNOText);c1.add(p1);JPanel p2=new JPanel();b1=new JButton(查询);b2=new JButton(退出);b1.addActionListener(this);b2.addActionListener(this);p2.add(b1);p2.add(b2);c1.add(p2);JPanel center=new JPanel(new GridLayout(4,2);SNAMEText=new JTextField(30);CHIText=new JTextField(30);MAText=new JTextField(30);JAVAText=new JTextField(30);center.add(new JLabel(姓名,SwingConstants.CENTER);center.add(SNAMEText);center.add(new JLabel(语文,SwingConstants.CENTER);center.add(CHIText);center.add(new JLabel(数学,SwingConstants.CENTER);center.add(MAText);center.add(new JLabel(java,SwingConstants.CENTER);center.add(JAVAText);c1.add(center);this.setVisible(true);this.setBounds(200,200,400,300);public void actionPerformed(ActionEvent e)if(e.getSource()=b1)STNO=STNOText.getText();int k=0;for(int i=0;iscs.al.size();i+)if(Integer.parseInt(STNO)=scs.al.get(i).getNum()SNAMEText.setText(scs.al.get(i).getName();MAText.setText(String.valueOf(scs.al.get(i).getShuxue();实用标准文档 文案大全 CHIText.setText(String.valueOf(scs.al.get(i).getYuwen();JAVAText.setText(String.valueOf(scs.al.get(i).getJava();k=1;if(k=0)JOptionPane.showMessageDialog(this,查无此人);if(e.getSource()=b2)this.dispose();/删除信息界面,通过输入的学号进行查找并在 arraylist中移除 class Delet extends JFrame implements ActionListener private JButton yes;private JButton cancle;private JTextField text1;private String STNO;public Delet()Container c3=this.getContentPane();c3.setLayout(new GridLayout(3,1);c3.setFont(new Font(true,Font.TRUETYPE_FONT,13);JPanel p1=new JPanel();JPanel p2=new JPanel();JLabel label1=new JLabel(删除学生信息,SwingConstants.CENTER);label1.setFont(new Font(true,Font.TRUETYPE_FONT,13);label1.setForeground(Color.blue);c3.add(label1);JLabel label2=new JLabel(请输入学号);text1=new JTextField(10);p1.add(label2);p1.add(text1);c3.add(p1);yes=new JButton(确定);cancle=new JButton(退出);p2.add(yes);p2.add(cancle);c3.add(p2);yes.addActionListener(this);cancle.addActionListener(this);实用标准文档 文案大全 this.setTitle(删除学生信息);this.setBounds(200,200,400,300);this.setVisible(true);public void actionPerformed(ActionEvent e)if(e.getSource()=yes)delt();if(e.getSource()=cancle)this.dispose();private void delt()STNO =text1.getText();scs.del(Integer.parseInt(STNO);JOptionPane.showMessageDialog(this,删除成功);/统计界面,对 arraylist中所有对象进行求总分,并按总分从达到小排序 class Tongji extends JFrame implements ActionListener private JButton b1,b2;JTextArea t;public Tongji()Container c1=this.getContentPane();c1.setLayout(new GridLayout(3,1);JPanel p1=new JPanel();JLabel label1=new JLabel(统计信息,SwingConstants.CENTER);p1.add(label1);c1.add(p1);t=new JTextArea();JScrollPane scroll=new JScrollPane(t);c1.add(scroll);JPanel p3=new JPanel();b1=new JButton(统计);b2=new JButton(退出);p3.add(b1);p3.add(b2);c1.add(p3);this.setBounds(200,200,400,300);this.setVisible(true);b1.addActionListener(this);b2.addActionListener(this);public void actionPerformed(ActionEvent e)实用标准文档 文案大全 if(e.getSource()=b1)scs.sum();scs.sort();String s=new String100;String s1=总分从大到小n 姓名 学号 数学 语文 java 总分;for(int i=0;iscs.al.size();i+)si=scs.al.get(i).getName()+scs.al.get(i).getNum()+scs.al.get(i).getShuxue()+scs.al.get(i).getYuwen()+scs.al.get(i).getJava()+scs.al.get(i).getSum();for(int i=0;iscs.al.size();i+)s1=s1+n+si;t.append(s1);if(e.getSource()=b2)this.dispose();/修改信息界面,捕获输入的学号,查找该生信息,直接在文本框中修改,类似添加功能冲新添加该生信息 class XiuGai extends JFrame implements ActionListener private JTextField STNOText,SNAMEText,MAText,CHIText,JAVAText;private JButton b1,b2,b3;public XiuGai()Container c4=this.getContentPane();c4.setLayout(new GridLayout(4,1);c4.setFont(new Font(true,Font.TRUETYPE_FONT,13);JPanel up=new JPanel();JPanel center1=new JPanel();JPanel center2=new JPanel(new GridLayout(4,2);JPanel low=new JPanel();JLabel label11=new JLabel(需要修改的学号);STNOText=new JTextField(15);up.add(label11);up.add(STNOText);c4.add(up);b1=new JButton(查找);center1.add(b1);c4.add(center1);实用标准文档 文案大全 JLabel label21=new JLabel(姓名,SwingConstants.CENTER);JLabel label22=new JLabel(数学,SwingConstants.CENTER);JLabel label23=new JLabel(语文,SwingConstants.CENTER);JLabel label24=new JLabel(java,SwingConstants.CENTER);SNAMEText=new JTextField(22);MAText=new JTextField(22);CHIText=new JTextField(22);JAVAText=new JTextField(22);center2.add(label21);center2.add(SNAMEText);center2.add(label22);center2.add(MAText);center2.add(label23);center2.add(CHIText);center2.add(label24);center2.add(JAVAText);c4.add(center2);b2=new JButton(修改);b3=new JButton(退出);low.add(b2);low.add(b3);c4.add(low);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);this.setTitle(修改信息);this.setBounds(200,200,600,400);this.setVisible(true);public void actionPerformed(ActionEvent e)if(e.getSource()=b1)for(int i=0;iscs.al.size();i+)if(Integer.parseInt(STNOText.getText()=scs.al.get(i).getNum()SNAMEText.setText(scs.al.get(i).getName();MAText.setText(String.valueOf(scs.al.get(i).getShuxue();CHIText.setText(String.valueOf(scs.al.get(i).getYuwen();JAVAText.setText(String.valueOf(scs.al.get(i).getJava();if(e.getSource()=b2)if(SNAMEText.getColumns()=0|MAText.getColumns()=0|JAVAText.getColumns()=0|CHIText.getColumns()=0)实用标准文档 文案大全 JOptionPane.showMessageDialog(this,请添加完全信息);else scs.del(Integer.parseInt(STNOText.getText();Student a=new Student(SNAMEText.getText(),Integer.parseInt(STNOText.getText(),Integer.parseInt(CHIText.getText(),Integer.parseInt(MAText.getText(),Integer.parseInt(JAVAText.getText();scs.adds(a);JOptionPane.showMessageDialog(this,修改成功);if(e.getSource()=b3)this.dispose();4 运行结果及分析 1、登陆:输入用户名和密码,通过程序判断,若正确则进入成绩管理系统!实用标准文档 文案大全 2、成绩管理界面 对系统进行初始化,读出文件信息,监听按钮,创建其它界面对象,弹出界面 3、查询界面 通过对输入的学号进行查询,将查到的对象的相应信息输出到文本框中 实用标准文档 文案大全 4、添加信息 输入学生信息,监听添加按钮,实现向文件中添加信息,若学号以存在需要重新添加 5、删除信息 输入需要删除的学生的学号,删除对应学号的学生信息 实用标准文档 文案大全 6、修改信息 输入学生学号,查找所有成绩,在文本框中直接修改按钮,点击修改及完成修改功能 7、统计信息 进入统计界面后,点击统计按钮,实现对学生成绩求总分,并按总分从大到小输出到实用标准文档 文案大全 文本区域中 8、退出 点击成绩管理界面的退出按钮,会对本次的所有操作进行保存 致谢 这次课程设计能够顺利的完成,要感谢老师的教导和同学的无私的帮助。首先是谭小波老师,为我的设计改进提供了很多宝贵的意见,还有和同学一起讨论帮我解决了几个错实用标准文档 文案大全 误,老师上课时讲得详细并严格要求我们,为我们的课程设计起了促进作用。在此对老师和给予我帮助的同学表示最诚挚的感谢!参考文献 1 张海藩.软件工程导论.清华大学出版社,2010 2 沈洪,施明利.VB程序设计案例汇编.清华大学出版社,2010 3 孟德欣.VB程序设计.清华大学出版社,2

    注意事项

    本文(java学生成绩管理系统课程设计3118.pdf)为本站会员(得****3)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开