public class student:user
{
public string banji;
public int chinese;
public void Login(user []b,int j)
{
Console.WriteLine("请输人班级:");
b[j].banji = Console.ReadLine();//报错
Console.WriteLine("请输人成绩:");
b[j].chinese = int.Parse(Console.ReadLine());//报错
}
}
} public class user
{
public string name;
public int code;
public void Login(user []a,int i)
{
Console.WriteLine("请输入用户名");
a[i].name = Console.ReadLine();
Console.WriteLine("请输人密码:");
a[i].code = int.Parse(Console.ReadLine());
}
static main()
int i = 0,j=0,k=0;
user[]a = new user[i+1];
student[]b = new student[j+1];
teacher[]c = new teacher[k+1];
Console.WriteLine("1.注册管理者信息2注册学生信息3注册教师信息4查看管理者信息5查看学生信息6查看教师信息");
Console.WriteLine("请选择:");
int contral = int.Parse(Console.ReadLine());
switch (contral)
{
case 1:
{ a[i]=new user();
a[i] . Login( a, i);
i++;
} break;
case 2:
{
b[i] = new student();
Console.WriteLine("请输入用户名");
b[i].name = Console.ReadLine();
Console.WriteLine("请输人密码:");
b[i].code = int.Parse(Console.ReadLine());
Console.WriteLine("请输人班级:");
b[i].banji = Console.ReadLine();
Console.WriteLine("请输人成绩:");
b[i].chinese = int.Parse(Console.ReadLine());
j++;
} break;
为啥有两个报错的地方呀
同学
public string banji;
public int chinese;
你定义的是单个的变量
下面怎么又变成数组了呢
Console.WriteLine("请输入用户名");
a[i].name = Console.ReadLine();
Console.WriteLine("请输人密码:");
a[i].code = int.Parse(Console.ReadLine());
虽然有两种修改,一个是上面改数组,一个是下面改变量,但是根据你的业务逻辑推断,单个变量是对的,一个用户只有一个名字密码,下面用数组是不对的。