场景

定义一个学生类,包含字段(学号,姓名,语文成绩,数学成绩,英语成绩)、属性(总成绩)、三个方法分别为(求平均分、数学平均分、语文平均分)。

要求:在main()方法中,定义一个学生类型的数组,保存全班所有同学的信息,并通过控制台为每个同学输入字段(学号,姓名,语文成绩,数学成绩,英语成绩)的值,最后,控制台输出班级一共有多少个学生,各科及总分平均分分别为多少。

实验方法

1.        在控制台应用程序程序中编写代码,项目名为student。

2.        分析类的成员。

3.        编写类声明语句,包括字段、、属性、方法声明。

实验结果

对象数组空指针异常说明——C#中使用对象数组必须分别为其开辟空间-LMLPHP

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace Student
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入班级中学生人数:");
int num = int.Parse(Console.ReadLine());
Student[] stu = new Student[num];
for (int i = 0; i < stu.Length; i++)
{
stu[i] = new Student();//必须分别开辟空间
	    }
int count=0;
int sumShuxue=0;
int sumYuwen=0;
int sumYingyu=0;
int sumScore=0;
int avgShuxue,avgYuwen, avgYingyu, avgScore;
for (int i = 0; i < stu.Length; i++)
{
Console.WriteLine("请输入第{0}个学生的学号:", i+1);
stu[i].Num = string.Format(Console.ReadLine());
Console.WriteLine("请输入第{0}个学生的姓名:", i + 1);
stu[i].Name = string.Format(Console.ReadLine());
Console.WriteLine("请输入第{0}个学生的语文成绩:", i + 1);
stu[i].Yuwen = int.Parse(Console.ReadLine());
Console.WriteLine("请输入第{0}个学生的数学成绩:", i + 1);
stu[i].Shuxue = int.Parse(Console.ReadLine());
Console.WriteLine("请输入第{0}个学生的英语成绩:", i + 1);
stu[i].Yingyu = int.Parse(Console.ReadLine());
count++;
}
for (int j = 0; j < stu.Length; j++)
{
sumYuwen = sumYuwen + stu[j].Yuwen;
sumShuxue = sumShuxue + stu[j].Shuxue;
sumYingyu = sumYingyu + stu[j].Yingyu;
sumScore = sumScore + stu[j].Score;
}
avgYuwen = sumYuwen / count;
avgShuxue = sumShuxue / count;
avgYingyu = sumYingyu / count;
avgScore = sumScore / count ;
Console.WriteLine("一共有{0}名学生,班级语文平均分为{1},数学平均分为{2},班级英语成绩分为{3},总分平均分为{4}",count,avgYuwen,avgShuxue,avgYingyu,avgScore);
Console.ReadLine();
}
}
class Student
{
public string num; public string Num
{
get { return num; }
set { num = value; }
}
string name; public string Name
{
get { return name; }
set { name = value; }
}
int yuwen; public int Yuwen
{
get { return yuwen; }
set { yuwen = value; }
}
int shuxue; public int Shuxue
{
get { return shuxue; }
set { shuxue = value; }
}
int yingyu; public int Yingyu
{
get { return yingyu; }
set { yingyu = value; }
}
public int Score
{
get { return yingyu + shuxue + yuwen; }
} } }
05-27 18:21