谁来写写看看这个C#题目(初级的)
定义一个学生类,其中有3个私有数据成员学号、姓名、成绩,以及若干成员函数实现对学生数据的赋值和输出。
要求 (1)在主函数中定义一个对象数组,完成对数组中每个对象的赋值。
(2)定义一个友元函数找出成绩最高的学生的学号和姓名,该函数的形式参数为对象引用。
小弟刚学C#。。自己写了个结果运行不了。。。
这是我自己写的
namespace Student
{
class Program
{
public class Student
{
private int number;
private string name;
private int grade;
public int Grade
{
get
{
return grade;
}
set
{
grade = value;
}
}
public Student()
{
}
public void scan()
{
Console.Write("请输入学号:");
this.number = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入姓名:");
this.name = Console.ReadLine();
Console.Write("请输入成绩:");
this.Grade = Convert.ToInt32(Console.ReadLine());
}
public void print(Student theStudent)
{
Console.WriteLine("学号:{0}\n姓名:{1}\n成绩:{2}", theStudent.number, theStudent.name, theStudent.grade);
}
}
static void Main(string[] args)
{
Student[] myStudents=new Student[5];
for (int i = 0; i < 5; i++)
{
myStudents[i].scan();
}
Student maxStudent = MaxGrade(myStudents);
maxStudent.print(maxStudent);
}
static Student MaxGrade(Student[] theStudent)
{
int maxVal=0;
for (int i = 0; i < 4; i++)
{
if (theStudent[i].Grade < theStudent[i + 1].Grade)
{
maxVal = i + 1;
}
}
return theStudent[maxVal];
}
}
}
编译器老是说myStudents[i].scan();这句未将对象引用设置到对象实例