回 帖 发 新 帖 刷新版面

主题:求助!!!!急急急!!!

从键盘获取学号,名字及语文,英语,数学,然后算总分,均分!最后在屏幕上答应出来。
如;
学号   姓名  英语  数学   语文  总分   均分 
。。    。。  。。  。。  。。  。。  。。
我写了点,没写完!但后面就不会写了,也不知道自己写的对不对!估计是错的吧!因为初学,所以有很多不会的,希望大家指点指点!我会很感激的!谢谢!
import java.io.*;
public class Student implements Serializable
      {
        
    /**
     * Creates a new instance of <code>Student</code>.
     */
     private String id;
     private String name;
     private int eng;
     private int math;
     private int chin;
     private int sum;
     private double vag;
    
     
    public  Student(String id,String name,int eng,int math,int chin)//构造方法
        {
            this.id=id;
            this.name=name;
            this.eng=eng;
            this.math=math;
            this.chin=chin;
            sum();
            vag();
    
    }
    public Student(Student s){
            this.id=s.id;
            this.name=s.name;
            this.eng=s.eng;
            this.math=s.math;
            this.chin=s.chin;
            sum();
            vag();
    
    }
 
    /**
     * @param args the command line arguments
     */
       public int sum()//总分
           {
             sum=eng+math+chin;
             return sum;
       }
       public double vag()//均分
       {
                vag=sum/3;
                return vag;
       }
      
       public  String toString()
           {
               String s;
               s="学号"+"\t"+"姓名"+"\t"+"英语"+"\t"
                   +"数学"+"\t"+"语文"+"\t"+"总分"+"\t"+"均分"+"\n";
                   for(int i=0;i<5;i++)
               s=s+"student[i].id"+"\t"+"student[i].name"+"\t"+"student[i].eng"+"\t"+"student[i].math"+"\t"
                   +"student[i].chin"+"\t"+"student[i].sum"+"\t"+"student[i].vag"+"\n";
                   return s;    
       } 
 
}
public class StudentClass {
    
    /**
     * Method main
     *
     *
     * @param args
     *
     */
     private Student student[];
    public static void main(String[] args) {
        // TODO: Add your code here
        Student student[];
        student =new Student[5];
        for(int i=0;i<5;i++)
         student[i]=new Student();(这里写的有问题,大家帮帮
        System.out.println();       指点下)
        
    }
           public static Student getStudent(int i) {
            Student studenti;
        System.out.println("请输入第"+i+"学生的信息:");
        System.out.print("学号;");
     try{    BufferedReader    in = new BufferedReader(new InputStreamReader(System.in));
              String id =in.readLine();
              System.out.print("姓名;");
              String name=in.readLine();
              System.out.print("英语;");
              int eng=Integer.parseInt(in.readLine());
              System.out.print("数学;");
               int math=Integer.parseInt(in.readLine());
              System.out.print("语文;");
               int chin=Integer.parseInt(in.readLine());
             
     }catch(IOException e){}       
            studenti=new Student();(这里写的有问题,不知道怎么写
            return studenti;          好烦)
         
}
}

  
 

回复列表 (共3个回复)

沙发


public static void main(String[] args) {
        // TODO: Add your code here
        Student student[];
        student =new Student[5];
        for(int i=0;i<5;i++)
         student[i]=new Student();
         [color=FFFF00][u]//是不是因该一个一个的为它们分配空间;([/u][/color]这里写的有问题,大家帮帮
        System.out.println();       指点下)
        
    }
           public static Student getStudent(int i) {
            Student studenti;
        [color=FF00FF] (1)[/color]
        System.out.println("请输入第"+i+"学生的信息:");
        System.out.print("学号;");
     try{    BufferedReader    in = new BufferedReader(new InputStreamReader(System.in));
              String id =in.readLine();
              System.out.print("姓名;");
              String name=in.readLine();
              System.out.print("英语;");
              int eng=Integer.parseInt(in.readLine());
              System.out.print("数学;");
               int math=Integer.parseInt(in.readLine());
              System.out.print("语文;");
               int chin=Integer.parseInt(in.readLine());
             
     }catch(IOException e){}       
            studenti=new Student();
     [color=FFFF00][color=00FF00][color=00FFFF][color=FF00FF]因该把它写到(1)这里呢?([/color][/color][/color][/color]这里写的有问题,不知道怎么写
            return studenti;          好烦)
         
}
}
[color=800080]sfd[/color]

板凳

我这里有 学生的4科成绩代码 你看了对你也许有帮助,另外你说是实现键盘事件,就的用implements  接口连接KeyListenListener 但是必须实现里面所有的方法。如果你选择用内部类的话 只要实现一个方法就可以 就看你自己熟悉那种方式了!!!。。。呵呵我也是初学者~~~我也有很多不懂的地方  我也在学习
public class coustr
{
    private String name[]= new String[3];
    private float score[]= new float[3][];
    public coustr()
    //对数据进行初始化,在单程序中只运行一次;
    {
        name[0]="黎明";
        name[1]="张学友";
        name[2]="刘德华";
        //三个学生的姓名化;
        score[0]=new float[3];
        score[1]=new float[3];
        score[2]=new float[3];
        score[0][1]=10;score[0][2]=20;score[0][2]=30;
        //第一个学生的三科成绩;
        score[1][0]=40;score[1][1]=50;score[1][2]=60;
        //第二个学生的三科成绩;
        score[2][0]=70;score[2][1]=80;score[2][2]=90;
        //第三个学生的三科成绩;
    }
public void scoreShow()
   //显示所有数据,三个学生三科成绩;
    {
        int i, j;
        for(i=0;i<3;i++)
      {
        System.out.println("\n学生的姓名:" + name[i] + "\n");
        System.out.println("\t\tc语言成绩  java语言成绩      sql语言成绩 ");
        for(j=0;j<3;j++)
         {
           System.out.println("\t\t"+score[i][j]);
         }


      }
    }
 public void scoreShow(String subject)
   //显示三个学生特定成绩;
   {
       int i;
       subject = subject.toLowerCase();
       for (i = 0; i < 3; i++) {

           System.out.println("\n" + name[i]);
           if (subject.equals("c"))
           {
               System.out.println("\tc语言成绩\t" + score[i][0]);
           } else
           if (subject.equals("jave"))
           {
               System.out.println("\tjave语言成绩\t" + score[i][1]);
           }
           else
           if (subject.equals("sql"))
           {
               System.out.println("\tsql语言成绩\t" + score[i][2]);
           }
       } }
      public void  scorShow(String inputname,String subject)
       //显示一个学生的一科成绩;
       {
           int i, j;
           for (i = 0; i < 3; i++) {
               if (inputname.equals(name[i]))
               {
                   System.out.println("\tc语言成绩\t" + score[i][0]);
               }
               else
                  if (subject.equals("jave"))
               {
                   System.out.println("\tjave语言成绩\t" + score[i][1]);
               }
               else
                   if (subject.equals("sql"))
               {
                   System.out.println("\tsql语言成绩\t" + score[i][2]);
               }
           }
       }
 public static void main(String args[]);
       {
           constr Constr=new constr();
           //constr.scoreShow();
           //constr.scoreShow("sql");
           constr.scoreShow("黎明","java");
       }

   }


3 楼

谢谢指点!我也是才学的哟!以后请你们多多指点哟!呵呵

我来回复

您尚未登录,请登录后再回复。点此登录或注册