Synchronization of old projects
Part1
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<RootNamespace>Lesson4_封装_构造函数和析构函数练习</RootNamespace>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,101 @@
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Lesson4_封装_构造函数和析构函数练习
|
||||
{
|
||||
class Person
|
||||
{
|
||||
public string name;
|
||||
public int age;
|
||||
public Person(string name, int age)
|
||||
{
|
||||
this.name = name;
|
||||
this.age = age;
|
||||
}
|
||||
}
|
||||
class Clas
|
||||
{
|
||||
public string name, major;
|
||||
Person[] student;
|
||||
public Clas(string name, string major, Person[] student)
|
||||
{
|
||||
this.name = name;
|
||||
this.major = major;
|
||||
this.student = student;
|
||||
}
|
||||
public void PrintInfo(Person[] student)
|
||||
{
|
||||
Console.WriteLine("{0}班级中学生信息",name);
|
||||
for (int i = 0; i < student.Length; i++)
|
||||
{
|
||||
Console.WriteLine("student的姓名:" + student[i].name + "student的年龄:" + student[i].age);
|
||||
}
|
||||
}
|
||||
}
|
||||
class Ticket
|
||||
{
|
||||
public uint distant;
|
||||
|
||||
public Ticket()
|
||||
{
|
||||
distant = 0;
|
||||
}
|
||||
public Ticket(uint distant)
|
||||
{
|
||||
this.distant = distant;
|
||||
}
|
||||
public void GetDistant()
|
||||
{
|
||||
Console.WriteLine(distant);
|
||||
}
|
||||
public void GetPrice()
|
||||
{
|
||||
double price = 0d;
|
||||
if (distant <= 100)
|
||||
{
|
||||
price = distant;
|
||||
}
|
||||
else if (distant <= 200)
|
||||
{
|
||||
price = Convert.ToDouble(distant * 0.95);
|
||||
}
|
||||
else if (distant <= 300)
|
||||
{
|
||||
price = Convert.ToDouble(distant * 0.9);
|
||||
}
|
||||
else
|
||||
{
|
||||
price = Convert.ToDouble(distant * 0.8);
|
||||
}
|
||||
Console.WriteLine(price);
|
||||
|
||||
}
|
||||
}
|
||||
internal class Program
|
||||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
Person p1 = new Person("张三", 3);
|
||||
Person p2 = new Person("李四", 4);
|
||||
|
||||
Console.WriteLine("P1姓名:" + p1.name + "P1年龄" + p1.age);
|
||||
Console.WriteLine("P2姓名:" + p2.name + "P2年龄" + p2.age);
|
||||
Person[] student = { p1, p2 };
|
||||
Console.WriteLine("把P1和P2放到Person的student之后");
|
||||
Console.WriteLine("student[0]的姓名:"+ student[0].name+ "student[0]的年龄:" + student[0].age);
|
||||
Console.WriteLine("student[1]的姓名:" + student[1].name + "student[1]的年龄:" + student[1].age);
|
||||
|
||||
|
||||
Clas c1 = new Clas("三年一班","计算机",student);
|
||||
c1.PrintInfo(student);
|
||||
|
||||
Ticket t = new Ticket();
|
||||
Console.Write("默认情况下的距离:");
|
||||
t.GetDistant();
|
||||
Console.Write("赋值初始化后的距离:");
|
||||
Ticket t2 = new Ticket(300);
|
||||
t2.GetDistant();
|
||||
Console.Write("赋值初始化后的价格计算:");
|
||||
t2.GetPrice();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user