编辑代码

import Foundation  
  
// 定义学生结构体  
struct Student {  
    var name: String  
    var studentID: String  
    var gender: String  
    var chineseScore: Int  
    var mathScore: Int  
    var englishScore: Int  
      
    // 初始化器  
    init(name: String, studentID: String, gender: String, chineseScore: Int, mathScore: Int, englishScore: Int) {  
        self.name = name  
        self.studentID = studentID  
        self.gender = gender  
        self.chineseScore = chineseScore  
        self.mathScore = mathScore  
        self.englishScore = englishScore  
    }  
      
    // 计算总成绩  
    func totalScore() -> Int {  
        return chineseScore + mathScore + englishScore  
    }  
}  
  
// 创建学生实例  
let s1 = Student(name: "张三", studentID: "001", gender: "男", chineseScore: 85, mathScore: 90, englishScore: 80)  
let s2 = Student(name: "李四", studentID: "002", gender: "女", chineseScore: 90, mathScore: 85, englishScore: 88)  
// 可以继续创建更多学生实例...  
  
// 存储所有学生的数组  
let students = [s1, s2] // 假设只有s1和s2两个学生  
  
// 输出提示信息  
print("请输入想要查找的学生姓名或学号:")  
  
// 读取用户输入  
if let str = readLine()?.trimmingCharacters(in: .whitespacesAndNewlines) {  
    // 查找学生  
    let foundStudent = students.first(where: { (student) -> Bool in  
        return student.name == str || student.studentID == str  
    })  
      
    if let student = foundStudent {  
        // 输出学生信息  
        print("学生信息:")  
        print("姓名: \(student.name)")  
        print("学号: \(student.studentID)")  
        print("性别: \(student.gender)")  
        print("语文成绩: \(student.chineseScore)")  
        print("数学成绩: \(student.mathScore)")  
        print("英语成绩: \(student.englishScore)")  
        print("总成绩: \(student.totalScore())")  
    } else {  
        // 如果没有找到学生  
        print("未找到指定的学生。")  
    }  
} else {  
    // 如果用户没有输入任何内容  
    print("未输入任何内容。")  
}