本关有两个类文件需要写入代码,你需要在两个不同的.java文件中切换。 所有学生的信息通过键盘录入,通过带参的构造方法给学生对象的属性赋初值。 测试输入: 小明 18 97.5 小红 20 86.5 小王 18 78 预期输出: 姓名:小明,年龄:18,成绩:97.5 姓名:小王,年龄:18,成绩:78.0
时间: 2024-02-11 13:06:30 浏览: 159
好的,这是一个 Java 类的问题,需要定义两个类文件。以下是 Java 代码实现:
1. `Student.java`
```java
public class Student {
private String name;
private int age;
private double score;
public Student(String name, int age, double score) {
this.name = name;
this.age = age;
this.score = score;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public double getScore() {
return score;
}
}
```
2. `Main.java`
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 输入学生数量
System.out.print("请输入学生数量:");
int n = sc.nextInt();
// 输入学生信息
Student[] students = new Student[n];
for (int i = 0; i < n; i++) {
System.out.print("请输入第" + (i+1) + "个学生的姓名、年龄和成绩:");
String name = sc.next();
int age = sc.nextInt();
double score = sc.nextDouble();
students[i] = new Student(name, age, score);
}
// 输出年龄为18岁的学生信息
System.out.println("年龄为18岁的学生信息如下:");
for (int i = 0; i < n; i++) {
if (students[i].getAge() == 18) {
System.out.println("姓名:" + students[i].getName() + ",年龄:" + students[i].getAge() + ",成绩:" + students[i].getScore());
}
}
}
}
```
在运行 `Main.java` 时,先输入学生数量,然后依次输入每个学生的姓名、年龄和成绩。最后,程序会输出年龄为18岁的学生信息。
测试输入:
```
3
小明 18 97.5
小红 20 86.5
小王 18 78
```
预期输出:
```
请输入学生数量:3
请输入第1个学生的姓名、年龄和成绩:小明 18 97.5
请输入第2个学生的姓名、年龄和成绩:小红 20 86.5
请输入第3个学生的姓名、年龄和成绩:小王 18 78
年龄为18岁的学生信息如下:
姓名:小明,年龄:18,成绩:97.5
姓名:小王,年龄:18,成绩:78.0
```
阅读全文