⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chengji.java

📁 java大作业:简易学生成绩管理系统 可以统计总成绩和排序等
💻 JAVA
字号:
// sunke.java这是一个学生成绩管理系统
//时间2007年11月17日, 晚上7点40分
//作者 孙科
//学号060341126

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.lang.*; 
public class sunke
{
	
	public static void main(String args[])
	{		     	
    	new	sk("欢迎您进入学生成绩管理系统");  
    
    }
}

class sk extends Frame implements ActionListener
{
   	static int i;
    student stu[] = new student[6];	
	TextField text1,text2,text3,text4,text5,text6,text7,text8,text9;
			
	Button button0,button1,button2,button3,button4,button5;	
    RandomAccessFile r;  
   //每个学生的成绩信息
	dialog dia;
	//定义一个窗口,而且设定他的布局
	File f = new File("data.txt");
	static int sum;
	static String name[]= new String[6];
	static int gerenzongfen[] = new int[6];
	static int count = 0;
	sk(String s)
	{		
		super(s);		
		try
        {  
        r = new RandomAccessFile("data.txt","rw");}
        catch(Exception e){ }
        		
		GridLayout grid = new GridLayout(9,1);	
	    setLayout(grid);
	    setSize(600,400);
	    setVisible(true);
    	setResizable(false);
    	setBackground(Color.white);    	
    	addWindowListener(new WindowAdapter()
    	{
    		public void windowClosing(WindowEvent e)
    		{
    			System.exit(0);
    		}
    	});    	
	                       //定义一个面板,用于放置提示信息-输入你的信息
		Panel panel0 = new Panel();
		panel0.setBackground(Color.CYAN);
		panel0.setForeground(Color.WHITE);
		Font f = new Font("录入信息",Font.LAYOUT_NO_LIMIT_CONTEXT,18);
		panel0.setFont(f);
		Label label0 = new Label("录入信息");
		panel0.add(label0);         //在面板中加入标签
		add(panel0);        //将面板加入到窗口中
		validate();         //刷新以保证窗口中的组件能够正常显示
	      //再次创建一个画板,用于放置学号和姓名	
	      
	    FlowLayout flow = new FlowLayout();  //设置面板的对齐方式	    
	    flow.setAlignment(FlowLayout.RIGHT);
		Label label1 = new Label("学号");
		Label label2 = new Label("名字"); 
		text1 = new TextField(10);
		text2= new TextField(12);
		
		Panel panel1 = new Panel();      //放入姓名和输入框	 
		panel1.add(label1);panel1.add(text1);
		panel1.add(label2);panel1.add(text2);
		panel1.setLayout(flow);	
		flow.setAlignment(FlowLayout.CENTER);
		add(panel1);	
		validate();
	        	       //设计输入成绩的界面,放入一个面板中	  
	        	       /*用了panel2 ,panel3面板分别放入一个
	        	        *输入
	        	        *
	        	        *
	        	        *
	        	        */    
		Label label4,label5,label6,label3;//描述课程德文字
		 
	    label3 = new Label("java");label4 = new Label("面向对象学");
	    label5 = new Label("电路分析基础");label6 = new Label("物理");
	    text3 = new TextField(10);text4 = new TextField(12);
	    text5 = new TextField(10);text6 = new TextField(12);
	    Panel panel2,panel3,panel4,panel5;
	                   //声明几个面板
	    panel2 = new Panel();panel3=new Panel();		
	    panel4 = new Panel();panel5=new Panel();
	    
	    panel2.add(label3);panel2.add(text3);
	    panel2.add(label4);panel2.add(text4);
	    panel3.add(label5);panel3.add(text5);
	    panel3.add(label6);panel3.add(text6);	    
	    panel2.setLayout(flow);panel3.setLayout(flow);	   
	   flow.setAlignment(FlowLayout.CENTER);
	    add(panel2);add(panel3);
	
		//计算成绩
		Label label7,label8,label9;
	    label7 = new Label("个人总分");label8 = new Label("班级总分");
	    label9 = new Label("班平均成绩");
	    text7 = new TextField(4);text8= new TextField(4);
	    text9 = new TextField(4);
	    text7.setEditable(false);text8.setEditable(false);text9.setEditable(false);
	    panel4.add(label7);panel4.add(text7);
	    panel4.add(label8);panel4.add(text8);
	    panel4.add(label9);panel4.add(text9);
	    add(panel4);
	    //加入功能按钮
	    button0 = new Button("录入成绩");
	    button1 = new Button("个人成绩");
	    button2 = new Button("班级总成绩");
	    button3 = new Button("平均成绩");
	    button4 = new Button("排序");
	    button5 = new Button("继续录入");
	    panel5.add(button0);panel5.add(button1);panel5.add(button2);
	    panel5.setLayout(flow);
	    add(panel5);
	    Panel panel6 = new Panel();
	    panel6.add(button3);panel6.add(button4);panel6.add(button5);
	    panel6.setLayout(flow);
	    add(panel6);
	    flow.setAlignment(FlowLayout.CENTER);
	    validate();	
	    text1.addActionListener(this);
	    text2.addActionListener(this);
	    text3.addActionListener(this);
	    text4.addActionListener(this);
	    text5.addActionListener(this);
	    text6.addActionListener(this);
	    button0.addActionListener(this);
	    button1.addActionListener(this);	    
	    button2.addActionListener(this);
	    button3.addActionListener(this);	    
	    button4.addActionListener(this);
	    //button4.addActionListener(this);
	    button5.addActionListener(this);
	    dia = new dialog(this,"排序结果:",false);
	    dia.setSize(200,400);
	    
	}
		public void actionPerformed(ActionEvent e)
		{
	       
	       if(e.getSource()==button0)
	       {
	       	String score[] = new String[6];
	       	score[0] = text1.getText()+"";
	       	score[1] = text2.getText()+"";
	       	score[2] = text3.getText()+"";
	       	score[3] = text4.getText()+"";
	       	score[4] = text5.getText()+"";
	       	score[5] = text6.getText()+"";
	       	try{
	       		r.writeUTF("学号:");
	       		r.writeBytes(score[0]);	
	       		r.writeUTF("名字:");
	       		r.writeUTF(score[1]); 
	       		name[count]=score[1];	       		    
	      	    	r.writeUTF("java");
	       		r.writeBytes(score[2]);
	       		r.writeUTF("面向对象学");
	       		r.writeBytes(score[3]);
	       		r.writeUTF("电路分析基础");
	       		r.writeBytes(score[4]);
	       		r.writeUTF("物理");
	       		r.writeBytes((score[5]));
	       		r.writeChar('\n');	
	       	    sum+=Integer.parseInt(text3.getText());
	       	    sum+=Integer.parseInt(text4.getText());
	            sum+=Integer.parseInt(text5.getText());
	       	    sum+=Integer.parseInt(text6.getText());   
	       	    gerenzongfen[count] = sum;
	       	    count++;      		       		
	       		}	       	
	       	catch(IOException e1){}
	       	
	       }
	       if(e.getSource()==button1)
	       {
	        int sum1 = 0;
	       	sum1+=Integer.parseInt(text3.getText());
	       	sum1+=Integer.parseInt(text4.getText());
	       	sum1+=Integer.parseInt(text5.getText());
	       	sum1+=Integer.parseInt(text6.getText());	       	
	       	text7.setText(String.valueOf(sum1));
	       }
	       if(e.getSource()==button2)
	       {
	       	text8.setText(String.valueOf(sum));
	       }
	       if(e.getSource()==button3)
	       {
	       	text9.setText(String.valueOf(sum/6.0));
	       }
	       if(e.getSource()==button4)  //排序按钮
	       {                            //显示排序信息
	       	dia.setVisible(true);
	       	sort(gerenzongfen,6,name);
	       	String temp = "";
	       	for (int i=0; i<6; i++)
	       	{
	       		
	       	temp = temp+String.valueOf(i+1)+name[i]+"      ";
	       	}
	       	dia.sort_info.setText(String.valueOf(temp));	       	
	       }
	       if(e.getSource()==button5)
	       {
	       	text1.setText("");
	       	text2.setText("");
	       	text3.setText("");
	       	text4.setText("");
	       	text5.setText("");
	       	text6.setText("");
	       	text7.setText("");
	       	text8.setText("");
	       	text9.setText("");
	       }
		/**************************************************************/
		}
	
		void sort(int score[],int n,String name[])
		{
			/*int smallindex;
			for(int i=0; i<n-1; i++)
			{
				smallindex=i;
				for(int j=i+1;j<n;j++)
				{					
					if(score[smallindex]>score[j])
					{
						smallindex=j;
					}
				}	
					int temp;
					temp=score[i];
					score[i]=score[smallindex];
					score[smallindex]=temp;
					
					String s;
					s=name[i];
					name[i]=name[smallindex];
					name[smallindex]=s;											
			}*/
                    for(int i=0;i<n;i++)
                        for(int j=1;j<n-i;j++)
                        {
                            if(score[i]>score[j])
                            {
                                int temp;
                                temp=score[j];
                                score[j]=score[i];
                                score[i]=temp;
                                String s;
                                s=name[j];
                                name[j]=name[i];
                                name[i]=s;
                            }
                        }
		}
       
}
//对话框类
class dialog extends Dialog
{
	int message = -1;
	Label sort_info = new Label();
	dialog(Frame f,String s,boolean b)
	{
		super(f,s,b);	
		
		addWindowListener(new WindowAdapter()
		{
			public void windowClosing(WindowEvent e)
			{
				message=-1;setVisible(false);
			}
		});
		add(sort_info);
	}
}
class student
{
public	String name,id;
public	int math,english,physic,pe;
public	int get_personnal_sum()
	{
		return math+english+physic+pe;
	}
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -