急!急1急!用java编写简单的学生成绩录入程序

如题所述

这里有一个类
实现学生学号,数学,语文,英语成绩录入
并且计算平均成绩,按照平均成绩高低输出信息
你可以改改!
//实现简单的学生信息输入输出和初步的成绩排序
public
class
student
{
private
int
id;
//学号
private
int
mathscore;
//数学成绩
private
int
chinscore;
//语文成绩
private
int
forescore;
//外语成绩
public
student()
{
id
=
0;
mathscore
=
0;
chinscore
=
0;
forescore
=
0;
}
public
student(int
newid,
int
newmathscore,
int
newchinsvore,
int
newforescore)
{
id
=
newid;
mathscore
=
newmathscore;
chinscore
=
newchinsvore;
forescore
=
newforescore;
}
public
double
getaveragescore()
{
//求平均成绩
double
averagescore
=
((double)
mathscore
+
chinscore
+
forescore)
/
3;
return
averagescore;
}
public
void
output(student
student)
{
//输出对象的内容
system.out.println("
"
+
student.id
+
"
"
+
student.mathscore
+
"
"
+
student.chinscore
+
"
"
+
student.forescore
+
"
"
+
student.getaveragescore());
}
public
int
max(student
a[],
int
n)
{
//student类对象数组的前n项中的成绩最大值的索引
int
position
=
0;
for
(int
i
=
1;
i
<
n;
i++)
{
if
(a[i].getaveragescore()
>
a[position].getaveragescore())
{
//比较平均成绩
position
=
i;
}
}
return
position;
}
public
void
selectsort(student
a[])
{
//student类对象数组的选择排序
for
(int
n
=
a.length;
n
>
1;
n--)
{
int
i
=
max(a,
n);
student
temp
=
a[i];
a[i]
=
a[n
-
1];
a[n
-
1]
=
temp;
}
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-16
当年我学C语言的时候,这个问题有考过,这边显示方式不方便用代码实现,我给你几个要点。

1, 建一个学生类,有四个字段,分别表示学生名,英语,计和数的成绩。
2, 建一个输出类,即含有方法 public static void main(String[] args),并在这个方法里用 while循环接收输入参数,直到你定义一个参数表示退出即可打印。
另外在这个输出类里,加一个属性 List list = new ArrayList();表示所有学生。
3, 运行窗口,使用输出类并输入参数即可。

最后,这个问题主要是考你的逻辑能力,初学者可能要想一两天才能想出来。

public class Student {
private String name;//姓名
private int english;//英语成绩
private int computer;//计算机成绩
private int database;//数据库成绩
//..getter/setter略
}

public class Printer {
private static List students = new ArrayList();

public static void main(String[] args) {
while (true) {
Scanner in = new Scanner(System.in);
System.out.println("请输入:学生名 英语 计算机 数据库");
String line = in.nextLine();
if(line == null || line.length() == 0) {
break;// 用户未输入,默认表示退出
}
if(line == "exit") {
break;// 用户输入exit,表示退出
}
String[] values = line.split(" ");
if(values.length != 4) {
break;//参数不对,退出!可以自己优化
}
Student s = new Student();
s.setName(values[0]);
s.setEnglish(Integer.valueOf(values[1]));
s.setComputer(Integer.valueOf(values[2]));
s.setDatabase(Integer.valueOf(values[3]));
students.add(s);
}
for (Student student : students) {
System.out.println("学生名:" + student.getName() + "; 英语成绩:"
+ student.getEnglish() + "...计,数成绩略,类推!");
}
}
}

真是沤心沥血啊,应该不会再要怎么编译,用啥工具吧?
第2个回答  2019-12-04
User
u
=
new
User();
List<User>
list
=
new
ArrayList<User>();
Scanner
in
=
new
Scanner(System.in);
System.out.println("请输入学生总数:");
int
t
=
in.nextInt();
int
math
=
0;
int
pc
=
0;
int
sql
=
0;
for(int
i=1;i<=t;i++){
u.setId(i);
System.out.println("请输入第"
+
i
+
"个人的数学成绩");
math
=
in.nextInt();
u.setMath(math);
System.out.println("请输入第"
+
i
+
"个人的计算机成绩");
pc
=
in.nextInt();
u.setPc(pc);
System.out.println("请输入第"
+
i
+
"个人的数据库成绩");
sql
=
in.nextInt();
u.setSql(sql);
list.add(u);
}
相似回答
大家正在搜