自己写的一个关于学生信息的程序
2006-04-30 00:57
357 查看
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
; ///给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);
}
}
///////////////////////////////////////定义一个接口
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
; ///给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);
}
}
相关文章推荐
- 编写程序:建立一个学生数据链表,每个节点的信息包括如下内容:学号,姓名,性别年龄专业。对链表做如下处理。输入一个学号(专业),如果链表中的节点包含此学号(专业),则删去该结点。
- 完成一个学生管理程序,使用学号作为键添加5个学生对象,并可以将全部信息保存在文件中,可以实现对学生信息的学号查找,输出全部学生信息的功能。
- 完成一个学生管理程序,使用学号作为键添加5个学生对象,并可以将全部信息保存在文件中,可以实现对学生信息的学号查找,输出全部学生信息的功能。
- 一个基础XML作为数据库的学生信息管理程序
- 11周2-2项目 - 存储班长信息的学生类,将Stu类的数据成员的访问权限改为private,你的程序是否能完成要求的功能?如果不行,请修改程序。请不要修改给出的代码,只能修改自己写的代码。
- 通过学习学生信息管理系统软件,C程序中,如何设计和编写一个应用系统
- 有五个学生,每个学生有3门课(语文、数学、英语)的成绩,写一个程序接收从键盘输入学生的信息,输入格式为:name,30,30,30(姓名,三门课成绩), 然后把输入的学生信息按总分从高到低的顺序写入
- 完成一个学生管理程序,使用学号作为键添加5个学生对象,并可以将全部信息保存在文件中,可以实现对学生信息的学号查找,输出全部学生信息的功能。
- 自己写的第一个程序————学生信息管理系统
- 使用gtype构造的一个简单学生管理程序其他属性自己加
- 一个简单关于学生成绩管理的C++程序代码,但是对于拷贝析构函数目前还是不知其作用何在
- 完成一个学生管理程序,使用学号作为键添加5个学生对象,并可以将全部信息保存在文件中,可以实现对学生信息的学号查找,输出全部学生信息的功能。
- 通过学习学生信息管理系统软件,C程序中,如何设计和编写一个应用系统
- 通过学习学生信息管理系统软件,C程序中,如何设计和编写一个应用系统?
- 通过学习学生信息管理系统软件,C程序中,如何设计和编写一个应用系统?
- 关于学生成绩管理的小程序 -- 一个菜鸟
- 存储班长信息的学生类,将Stu类的数据成员的访问权限改为private,你的程序是否能完成要求的功能?如果不行,请修改程序。请不要修改给出的代码,只能修改自己写的代码。
- C-自己写的一个最简单的班级信息统计程序
- 完成一个学生管理程序,使用学号作为键添加5个学生对象,并可以将全部信息保存在文件中,可以实现对学生信息的学号查找,输出全部学生信息的功能。