筱海 发表于 2022-5-4 15:17:34

数组与类

【问题描述】设计一个学生类,有学号、姓名、性别、年龄和数学、英语、程序三门课程成绩(整型)。创建有三个学生的对象数组,输出各学生的信息。

【输入形式】按学号、姓名、性别、年龄、数学、英语、程序的顺序输入,空格隔开,一人一行。

【输出形式】student:?,?,?,?,?,?,?   输出学生信息的顺序与输入顺序相同,数据之间用“,”隔开,一人一行

傻眼貓咪 发表于 2022-5-4 16:05:30

class Subject:
    def __init__(self, math, eng, progm):
      self.math = math
      self.eng = eng
      self.progm = progm

class Student:
    def __init__(self, ID, name, gender, age, score):
      self.ID = ID
      self.name = name
      self.gender = gender
      self.age = age
      self.score = score
      self.data =
   
    def __iter__(self):
      self.current_index = 0
      return self

    def __next__(self):
      if self.current_index < len(self.data):
            x = self.data
            self.current_index += 1
            return x
      raise StopIteration


students =

for i in range(3):
    ID, name, gender, age, m, e, p = map(str, input().split())
    score = Subject(m, e, p)
    students = Student(ID, name, gender, age, score)

for stu in students:
    ID, name, gender, age, score = stu
    print(ID, name, gender, age, score.math, score.eng, score.progm)

Twilight6 发表于 2022-5-4 19:31:38




学生类 Student.java:

public class Student {
    private Integer id;
    private String name;
    private String gender;
    private Integer age;
    private Integer math;
    private Integer english;
    private Integer program;

    public Student() {
    }

    public Student(Integer id, String name, String gender, Integer age, Integer math, Integer english, Integer program) {
      this.id = id;
      this.name = name;
      this.gender = gender;
      this.age = age;
      this.math = math;
      this.english = english;
      this.program = program;
    }


    public Integer getId() {
      return id;
    }

    public void setId(Integer id) {
      this.id = id;
    }

    public String getName() {
      return name;
    }

    public void setName(String name) {
      this.name = name;
    }

    public String getGender() {
      return gender;
    }

    public void setGender(String gender) {
      this.gender = gender;
    }

    public Integer getAge() {
      return age;
    }

    public void setAge(Integer age) {
      this.age = age;
    }

    public Integer getMath() {
      return math;
    }

    public void setMath(Integer math) {
      this.math = math;
    }

    public Integer getEnglish() {
      return english;
    }

    public void setEnglish(Integer english) {
      this.english = english;
    }

    public Integer getProgram() {
      return program;
    }

    public void setProgram(Integer program) {
      this.program = program;
    }

    @Override
    public String toString() {
      return "student:" + id +
                "," + name +
                "," + gender +
                "," + age +
                "," + math +
                "," + english +
                "," + program;
    }
}

输出学生信息类 PrintStudentInfo.java:

import java.util.Scanner;

public class PrintStudentInfo {
    public static void main(String[] args) {
      Scanner input = new Scanner(System.in);
      Student[] students = new Student;
      for (int i = 0; i < students.length; i++){
            String str = input.nextLine();
            String[] data = str.split(" ");
            Student stu = new Student(
                  Integer.parseInt(data),
                  data,
                  data,
                  Integer.parseInt(data),
                  Integer.parseInt(data),
                  Integer.parseInt(data),
                  Integer.parseInt(data)
            );
            students = stu;
      }

      for (Student student : students){
            System.out.println(student);
      }
    }
}
页: [1]
查看完整版本: 数组与类