编写一个程序,输入N个学生数据,包括学号、姓名、成绩,要求只输出成绩在80~89分的学生数据。 思路: 设计一个学生类Stud,包括no(学号)、name(姓名)和 deg(成绩)数据成员,和成员函数disp(),用于只输出成绩在80~89分数段的学生数据。在main()函数中定义了一个学生对象数组,用于存储输入的学生数据。
使用Java类和对象加上集合框架即可解决
如有帮助还望在我的回答上点个【采纳】
Student类:
public class Student {
int stuno;
String stuname;
float deg;
List<Student> stus=new ArrayList();
@Override
public String toString() {
return "Student [stuno=" + stuno + ", stuname=" + stuname + ", deg="
+ deg + "]";
}
public void disp(){
for(int i=0;i<stus.size();i++){
Student stu = stus.get(i);
if(stu.deg>=80&&stu.deg<=90){
System.out.println(stu.toString());
}
}
}
}
Test类:
public class Test {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入学生数:");
int n= scan.nextInt();
Student stu = new Student();
for(int i=0;i<n;i++ ){
Student s = new Student();
System.out.println("请输入第"+(i+1)+"个学生的学号:");
s.stuno = scan.nextInt();
Scanner scan2 = new Scanner(System.in);
System.out.println("请输入第"+(i+1)+"个学生的姓名:");
s.stuname = scan2.nextLine();
System.out.println("请输入第"+(i+1)+"个学生的成绩:");
s.deg = scan2.nextFloat();
stu.stus.add(s);
}
stu.disp();//显示
}
}