自己写的一个关于学生信息的程序

import java.io.*;
///定义一个接口
interface Manage{
 void  display(StuAttribute a[]);
}
///定义学生的个个属性
class StuAttribute {
   private   String  namber,name,sex; 
   private    int     grade;
     StuAttribute(String  namber,String name,String  sex,int  grade)
    {
     this.namber=namber;
     this.name=name;
     this.sex=sex;
     this.grade=grade;
    }
    public String  getNamber()
    {
        return namber;
      }
       public String  getName()
      {
        return name;
       }
       public String  getSex() {
        return sex;
       }
       public int  getGrade() {
        return grade;
     }
 }
 
 //对学生成绩进行处理,排序还有输出
class  StuManage implements Manage
{
 
  StuManage(StuAttribute a[],int n)
  { 
   StuAttribute temp;
   int incr=n/2;
   while(incr>=1)//shell排序
   { 
    for(int i=incr;i<n;i++)
     {   temp=a[i];
        int j=i;
        while(j>=incr && temp.getGrade()<a[j-incr].getGrade())
        {
         a[j]=a[j-incr];
         j-=incr;
        }
        a[j]=temp;
     }
    incr/=2;
   }
  
  }
 public void display(StuAttribute a[])
  {
   System.out.println(a.length);
   for(int i=0;i<a.length;i++)
   {
     System.out.println(a[i].getNamber());
     System.out.println(a[i].getName());
     System.out.println(a[i].getSex());
     System.out.println(a[i].getGrade());
   }
  }
}
/
/student 类
public  class  Student{
 public  static void main(String args [])throws IOException
 {
  StuAttribute stu[];      //只是定义了只是一个StuAttribute对象没有分配内存空间
    int n=0;                 //必须对n进行初始化否则将报错
  System.out.println("输入你所输入学生信息的人数");
  BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
    n=Integer.parseInt(in.readLine());
  stu=new StuAttribute[n];  ///给stu这个对象分配内存空间;
  char m[]=new char[2];
  for(int i=0;i<n;i++)
  {
     System.out.println("输入你所输入学生学号");
     BufferedReader in1=new BufferedReader(new InputStreamReader(System.in));
     String namber=in1.readLine();
     System.out.println("输入你所输入学生姓名");
         
     String name=in1.readLine();
     System.out.println("输入你所输入学生性别");
     
     String sex=in1.readLine();
     System.out.println("输入你所输入学生成绩");
     BufferedReader in4=new BufferedReader(new InputStreamReader(System.in));
     int grade=Integer.parseInt(in4.readLine());
     stu[i]=new StuAttribute(namber,name,sex,grade);//非常重要 尤其是这个new
     //这是创建构造方法  虽然已经创建了StuAttribute的对象类 但是对构造方法进行
     //初始化时必须要创建构造方法
    
   }  
   StuManage zzg=new StuManage(stu,n) ;
   zzg.display(stu);
  }

}
 
   

     
    
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值