
using System;
namespace ConsoleApplication1
{
  // Создадим структуру вне класса Program
  struct student
  {
     public string name;    // поле - имя
     public byte age;       // поле - возраст
     public student(string Name, byte Age)  // конструктор
     {
        this.name = Name;
        age = Age;   // указатель this можно не доавати
     }
     public void WriteUserInfo()   // метод для вивода
     {
        Console.WriteLine("Name: {0}, Age: {1}", name, age);
     } 
  }        // кінец объяви структури
  class Program
  {
     static void Main()
     {
        student stud1;    // Без конструктора
        stud1.name = "Петр";
        stud1.age = 18;
        Console.Write("student1: ");
        stud1.WriteUserInfo();
        student stud2 = new student("Olena", 17);  // с конструктором
        Console.Write("student2: ");
        stud2.WriteUserInfo();
 // Отличие структур от класів – в передачі по значенню
        stud1 = stud2;   // пересилка
        stud2.name = "Nataliia;  // зміна полей структури
        stud2.age = 19;
        Console.Write("\nstudent1: ");
        stud1.WriteUserInfo();
        Console.Write("student2: ");
        stud2.WriteUserInfo();
        Console.ReadKey();
     }
  }
}