怎么设计一个成绩类,该类能够记录学生姓名,班级,成绩和科目,并能够修改成绩和输出成绩
public class Grade
{
private string studentName; // 学生姓名
private string className; // 班级
private string subject; // 科目
private int score; // 成绩
// 构造函数,初始化成员变量
public Grade(string studentName, string className, string subject, int score)
{
this.studentName = studentName;
this.className = className;
this.subject = subject;
this.score = score;
}
// 获取学生姓名
public string GetStudentName()
{
return studentName;
}
// 获取班级
public string GetClassName()
{
return className;
}
// 获取科目
public string GetSubject()
{
return subject;
}
// 获取成绩
public int GetScore()
{
return score;
}
// 修改成绩
public void SetScore(int score)
{
this.score = score;
}
// 输出成绩
public void PrintScore()
{
Console.WriteLine("{0}班{1}的{2}成绩为{3}", className, studentName, subject, score);
}
}
在上述代码中,Grade 类具有四个成员变量:studentName 代表学生姓名,className 代表班级,subject 代表科目,score 代表成绩。构造函数用于初始化成员变量,分别接受学生姓名、班级、科目和成绩作为参数。提供了获取学生姓名、班级、科目和成绩的方法 GetStudentName()、GetClassName()、GetSubject() 和 GetScore(),以及修改成绩的方法 SetScore() 和输出成绩的方法 PrintScore()。
使用示例:
class Program
{
static void Main(string[] args)
{
Grade grade = new Grade("张三", "一班", "数学", 90);
grade.PrintScore(); // 输出:一班张三的数学成绩为90
grade.SetScore(95);
grade.PrintScore(); // 输出:一班张三的数学成绩为95
}
}
在上述代码中,我们创建了一个 Grade 类的实例 grade,并通过构造函数初始化了学生姓名、班级、科目和成绩。然后调用 PrintScore() 方法输出成绩,接着调用 SetScore() 方法修改了成绩,并再次输出新的成绩。
以下是一个简单的成绩类示例代码:
public class Score
{
public string name;
public string className;
public string subject;
public double grade;
public Score(string name, string className, string subject, double grade)
{
this.name = name;
this.className = className;
this.subject = subject;
this.grade = grade;
}
public void ModifyGrade(double newGrade)
{
this.grade = newGrade;
}
public void PrintGrade()
{
Console.WriteLine("{0}的{1}课-{2}班成绩为:{3}", this.name, this.subject, this.className, this.grade);
}
}
在这个示例代码中,Score
类具有四个公共属性:姓名(name
)、班级(className
)、科目(subject
)和成绩(grade
)。构造函数(Score()
)用于初始化这些属性。ModifyGrade()
方法用于修改成绩,PrintGrade()
方法用于输出成绩。
下面对该类进行简要测试:
class Program
{
static void Main(string[] args)
{
Score s1 = new Score("小明", "一班", "数学", 92.0);
s1.PrintGrade(); // 输出成绩:小明的数学课-一班成绩为:92
s1.ModifyGrade(95.0);
s1.PrintGrade(); // 输出成绩:小明的数学课-一班成绩为:95
}
}
以上示例代码创建了一个Score对象s1
,并使用初始化的属性值输出了成绩。然后,使用ModifyGrade()
方法将成绩修改为95,再次使用PrintGrade()
方法输出了修改后的成绩。
运行该示例代码后,输出结果如下:
小明的数学课-一班成绩为:92
小明的数学课-一班成绩为:95
可以看到,上述代码实现了一个简单的成绩类,可以存储学生的相关信息及成绩,并可以对成绩进行修改和输出操作。你可以在此基础上扩展该类以满足具体需求。