用C#编写出一个通用的人员类(Persom),该类具有姓名(Name),年龄(Age),性别(Sex)等域,然后通过对.

2025-03-13 11:27:55
推荐回答(1个)
回答1:

using System;
namespace Person
{
    class Program
    {
        static void Main(string[] args)
        {
            Person p = new Person(1, "john", "gallow", 20, 0);
            Student s = new Student(2, "tom", "rino", 21, 0, 90.0, 89.0, 88.5, 70.5, 98.0);
            Student s2 = new Student(3, "muany", "nashi", 22, 0);
            Console.WriteLine(p.ToString());
            Console.WriteLine(s);
            Console.WriteLine(s2);
        }
    }
    public class Person
    {
        public int id { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public int Age { get; set; }
        public int Sex { get; set; }
        public Person() { }
        public Person(int id, string firstName, string lastName, int age, int sex)
            :base()
        {
            this.id = id;
            this.FirstName = firstName;
            this.LastName = lastName;
            this.Age = age;
            this.Sex = sex;
        }
        public override string ToString()
        {
            return string.Format("我是{0} {1},今年{2:d}岁,{3}生,id:{4:d}", FirstName, LastName, Age, Sex==0?"男":"女", id);
        }
    }
    public class Student : Person
    {
        public double Grade1 { get; set; }
        public double Grade2 { get; set; }
        public double Grade3 { get; set; }
        public double Grade4 { get; set; }
        public double Grade5 { get; set; }
        public double Average
        {
            get
            {
                return Math.Round((Grade1 + Grade2 + Grade3 + Grade4 + Grade5) / 5, 1);
            }
        }
        public Student() { }
        public Student(int id, string firstName, string lastName, int age, int sex) 
            : base(id, firstName, lastName, age, sex) { }
        public Student(int id, string firstName, string lastName, int age, int sex, double g1, double g2, double g3, double g4, double g5)
            : base(id, firstName, lastName, age, sex)
        {
            this.Grade1 = g1;
            this.Grade2 = g2;
            this.Grade3 = g3;
            this.Grade4 = g4;
            this.Grade5 = g5;
        }
        public override string ToString()
        {
            return string.Format("{0}平均成绩:{1}", base.ToString(), Average);
        }
    }
}