目录
1、封装一个类:Aircraft,拥有属性:牌子、型号、颜色、隶属公司、飞行速度、装载人数、飞机类型(大中小(400-200-100)由装载人数自动设置)、当前飞机装载的人数(随机生成)
2、编一个程序,定义类(有姓名,年龄,手机号码三个字段),再定义一个一维数组,使数组元素为类,存入数据,然后依次输出,使用for循环语句进行输入输出操作。
4、建立三个类:居民、成人、官员。居民包含身份证号、姓名、出生日期,而成人继承自居民,多包含学历、职业两项数据;官员则继承自成人,多包含党派、职务两项数据。要求每个类中都提供数据输入输出的功能。
1、封装一个类:Aircraft,拥有属性:牌子、型号、颜色、隶属公司、飞行速度、装载人数、飞机类型(大中小(400-200-100)由装载人数自动设置)、当前飞机装载的人数(随机生成)
using System.Drawing;
namespace _1
{
internal class Program
{
static void Main(string[] args)
{
//1.封装一个类:Aircraft,拥有属性:牌子、型号、颜色、隶属公司、飞行速度、装载人数、飞机类型(大中小(400-200-100)由装载人数自动设置)、当前飞机装载的人数(随机生成)
Aircraft Air=new Aircraft ("空客 (Airbus)", "A350 XWB","白色", "宇航",500);
Air.random(); //随机生成当前飞机装载的人数
Air.Judge(); //判断使用的飞机类型
Air.Show(); //打印
Aircraft Air1 = new Aircraft("安东诺夫(Antonov)", "An-124", "蓝色", "乌克兰军事航空", 400);
Air1.random(); //随机生成当前飞机装载的人数
Air1.Judge(); //判断使用的飞机类型
Air1.Show(); //打印
}
}
class Aircraft
{
public string PZ; //飞机牌子
public string Model; //飞机型号
public string Color; //飞机颜色
public string Company; //飞机隶属公司
public double Speed; //飞机飞行速度
public int People; //飞机装载人数
public int Now_People; //当前飞机装载的人数
public enum Etype //飞机类型枚举
{
大 = 400, 中 = 200, 小 = 100
}
public Etype Type; //飞机类型
public Aircraft(string pZ, string model, string color, string company, double speed)
{
PZ = pZ;
Model = model;
Color = color;
Company = company;
Speed = speed;
}
public void random()
{
Random n = new Random();
Now_People = n.Next(0, 401);
}
public void Judge()
{
if (Now_People <= 100)
{
Type = Aircraft.Etype.小;
}
else if (Now_People > 200)
{
Type = Aircraft.Etype.大;
}
else
{
Type = Aircraft.Etype.中;
}
People = (int)Type;
}
public void Show()
{
Console.WriteLine($"飞机的牌子{PZ}、型号{Model}、颜色{Color}、隶属公司{Company}、飞行速度{Speed}km/h、装载人数{People}、飞机类型{Type}型、当前飞机装载的人数{Now_People}");
}
}
}
2、编一个程序,定义类(有姓名,年龄,手机号码三个字段),再定义一个一维数组,使数组元素为类,存入数据,然后依次输出,使用for循环语句进行输入输出操作。
internal class Program
{
static void Main(string[] args)
{
ID[] str = new ID[3];
for (int i = 0; i < 3; i++)
{
str[i] = new ID();
Console.Write("请输入姓名:");
str[i].Name = Console.ReadLine();
Console.Write("请输入年龄:");
str[i].Age = int.Parse(Console.ReadLine());
Console.Write("请输入手机号码:");
str[i].Telephone = Console.ReadLine();
Console.WriteLine($"\r\n姓名:{str[i].Name}\r\n年龄:{str[i].Age}\r\n手机号码:{str[i].Telephone}\r\n");
}
}
}
class ID
{
public string Name;
public int Age;
public string Telephone;
}
3、编一个程序,定义一个类,该类中定义二个非静态方法,一个方法用来求出这个三角形的周长,另一个方法用来求出这个三角形的面积。已知三角形三条边a,b,c,计算其面积可以用Math类中的Sqrt()方法,有表达式(s*(s-a)*(s-b)*(s-c)),可以利用它计算指定数的开方,其中s=(a+b+c)/2。在主方法中输入一个三角形三条边a,b,c,要求调用这二个非静态方法计算三角形的周长和面积。注意:在输入三角形三条边时,必须检查它们的数据合法性。
internal class Program
{
static void Main(string[] args)
{
TRI tri=new TRI ();
Console.WriteLine("请输入三角形的三条边长:");
tri.a =int.Parse(Console.ReadLine());
tri.b=int.Parse(Console.ReadLine());
tri.c=int.Parse(Console.ReadLine());
if (tri.a + tri.b > tri.c && tri.a + tri.c > tri.b && tri.c + tri.b > tri.a)
{
Console.WriteLine(tri.CCC());
Console.WriteLine(tri.SSS());
}
else
{
Console.WriteLine("不能组成三角形:");
}
}
}
class TRI
{
public int a;
public int b;
public int c;
//public TRI(int a, int b, int c)
//{
// this.a = a;
// this.b = b;
// this.c = c;
//}
public int CCC() { int C = a + b + c; return C; }
public double SSS() { double s = (a + b + c) / 2;double S = (s * (s - a) * (s - b) * (s - c)); return S; }
}
4、建立三个类:居民、成人、官员。居民包含身份证号、姓名、出生日期,而成人继承自居民,多包含学历、职业两项数据;官员则继承自成人,多包含党派、职务两项数据。要求每个类中都提供数据输入输出的功能。
namespace _2
{
internal class Program
{
static void Main(string[] args)
{
JM mj= new JM();
mj.Read(); //数据输入
mj.Write(); //数据输出
CR Li= new CR();
Li.Read(); //数据输入
Li.Write();//数据输出
GY guan= new GY();
guan.Read(); //数据输入
guan.Write(); //数据输出
}
}
}
namespace _2
{
internal class JM
{
public string ID;
public string Name;
public string Birth;
public virtual void Read()
{
Console.Write("请输入身份证号:");
ID=Console.ReadLine();
Console.Write("请输入姓名:");
Name=Console.ReadLine();
Console.Write("请输入出生日期:");
Birth=Console.ReadLine();
}
public virtual void Write()
{
Console.WriteLine($"\n身份证号:{ID}\n姓名:{Name}\n出生日期:{Birth}\n");
}
}
}
namespace _2
{
internal class CR:JM
{
public string Education;
public string Occupation;
public override void Read()
{
base.Read();//继承父类此函数中的全部内容
Console.Write("请输入学历:");
Education=Console.ReadLine();
Console.Write("请输入职业:");
Occupation=Console.ReadLine();
}
public override void Write()
{
Console.WriteLine($"\n身份证号:{ID}\n姓名:{Name}\n出生日期:{Birth}学历:{Education}\n职业:{Occupation}\n");
}
}
}
namespace _2
{
internal class GY:CR
{
public string Party; //党派
public string position; //职务
public override void Read()
{
base.Read();
Console.Write("请输入党派:");
Party=Console.ReadLine();
Console.Write("请输入职务:");
position=Console.ReadLine();
}
public override void Write()
{
Console.WriteLine($"\n身份证号:{ID}\n姓名:{Name}\n出生日期:{Birth}学历:{Education}\n职业:{Occupation}\n党派:{Party}\n职务:{position}\n");
}
}
}