SlideShare a Scribd company logo
1 of 35
ОУУБИС ХМТ-ийн тэнхим
Багш Д.Ганцоож
Хичээлийн агуулга
 C# програмчлалын хэлний тухай
 C# програмын бүтэц
 Өгөгдлийн төрлүүд үйлдлүүд
 Үйлдлүүд
C# програмчлалын хэл
 C# хэл нь .NET Фреймворктэй хамт зохиогдсон
програмчлалын хэл
 C# хэл нь энгийн боловч орчин үеийн
программчлалын асуудлуудыг шийдэхэд
тохиромжтой, өндөр бүтээмжтэй хэл
 C# хэл нь С++ болон Жава хэлнээс удамшин үүссэн
бөгөөд объект хандлагат, компонентод суурилсан,
бүтцийн програмчлалуудыг бүгдийг нь дэмжинэ.
 Мөн UNICODE кодын системийг дэмжинэ.
C# програмын бүтэц
 Using түлхүүр үг нь програмд ашиглах класуудын
бүтэц замыг зааж өгөх шаардлагагүй болгож
хялбарчлан холбож өгдөг.
 Програмын логик, өгөгдөл зэрэг бүхий л зүйл нь
класс дотор бичигдэх ёстой. Классын хүрээнээс
гадуур глобаль хувьсагч гэж байдаггүй.
 C# програм бүрт Main() метод хэрэгэтй байдаг. Энэ
метод нь програмын эхлэх цэг болдог. Энэ метод нь
үргэлж static хувиргагчтай байх ёстой бөгөөд M
үсэг нь томоор бичигдэх ёстой.
C# програмын бүтэц
 Жишээ нь:
 static void Main() {……………}
 static void Main(string[] args) {……………..}
 static int Main() {…………….}
 Static int Main(string[] args) {………………}
Тайлбар:
Main метод нь нэг хуурмаг параметртэй байж болно.
Уг параметрийн нэр нь дурын, харин төрөл нь заавал
string[] байх ёстой.
Өгөгдлийн төрөл
 C# хэлний төрлүүдийг
 Эгэл төрөл (value type)
 Заалт төрөл (reference type)
 Заалт ба эгэл төрлүүд нь System.Object классаас
удамшсан байдаг.
 Заалт төрлүүд нь System.Object классаас шууд
удамшсан байдаг.
 Эгэл төрлүүд нь System.Object классаас
System.ValueType классаар дамжуулан удамшдаг.
Өгөгдлийн төрөл
Өгөгдлийн төрөл
 CLR нь заалт ба эгэл төрлүүдийг санах ойд ялгаатай
байршуулдаг.
 Эгэл төрлийн объект нь стект байрладаг. Эгэл
төрөл үүсэхдээ 0 утга авдаг.
 Заалт төрлийн объектын хаяг нь стект байрлана.
Жинхэнэ утга нь хийп санах ойд байрладаг. Заалт
төрөл үүсэхдээ null утга авдаг.
 Тайлбар:
 Ажиллах горимын үед хувьсагч болон объектуудыг
байршуулахад зориулагдсан сул санах ой
Өгөгдлийн төрөл
 C# хэлний үндсэн төрлүүд нь фреймворкийн бүтэц
төрлүүд байдаг. Уг бүтцүүдийн гишүүд нь тухайн
төрөл дээр ажиллах нэмэлт боломжуудыг бий
болгодог.
 Тодорхой төрлийн утгуудын ард дагавар үсэг
тавихыг шаарддаг.
 Тухайн төрлийн зарлахад тухайн төрлийн анхны
байгуулагч дуудагдаж, анхны утга
тодорхойлогдоно.
 C# хэлний төрлүүдтэй харгалзах фреймворкийн
төрлүүд байна.
Өгөгдлийн төрөл – Эгэл төрлүүд
Өгөгдлийн төрөл – Эгэл төрлүүд
 byte, sbyte, short, ushort, int, uint, long, ulong
 Нэмэлт боломжууд:
 sbyte sb = sbyte.MinValue;
 string s = “15”;
 byte b = byte.Parse(s);
 Console.WriteLine(sb); // -128
 Console.WriteLine(B); // 15
 short sh = short.MaxValue;
 console.WriteLine(sh); // 32767
Өгөгдлийн төрөл – Эгэл төрлүүд
 float, double
 float: 1.5*10-45 –c 3.4*1038 хүртэл утга бүхий 7 цифрийн
нарийвчлалтай бодит тоо
 double: 5*10-324 –с 1.7*10308 хүртэл утга бүхий 15-16 цифрийн
нарийвчлалтай бодит тоо
 float төрлийн тогтмол утгын ард F үсэг тавина.
 double төрлийн тогтмол утгын ард D үсэг тавина.
 Анхны утга: float: 0.0f, double: 0.0d
 Бодит тоон үйлдлийн үр дүн тодорхой бус үед NaN(Not a Number)
утга буцаана.
Өгөгдлийн төрөл – Эгэл төрлүүд
decimal
 Авах утгын хязгаар:
 decimal: 128 бит хэмжээтэй, 28 цифрийн нарийвчлалтай
бодит тоон төрөл
 decimal төрлийн тогтмол утгын ард M үсэг тавина.
 Анхны утга: decimal: 0.0m
 Санхүүгийн болон мөнгөний тооцоолол хийхэд
тохиромжтой төрөл
decimal iRate = 3.9834M;
iRate = decimal.Round(iRate,2);
decimal p = decimal.Parse(“100.05”);
Өгөгдлийн төрөл – Эгэл төрлүүд
bool
 Авах утгын хязгаар:
 bool: true, false
 bool төрлийн утгыг бүхэл тоон төрөл рүү хөрвүүлж
болохгүй.
bool bt = true;
string bStr = bt.ToString(); // “true”
bt = (bool) 1; // Буруу
Өгөгдийн төрөл – Эгэл төрлүүд
 char: 0…..65535 хоорондох 16 битийн тэмдэггүй бүхэл
тоон утга
 Дээрх утгуудад юникод тэмдэгтүүд харгалзана.
 ushort төрөлтэй адил утга авах хэдий ч хийх үйлдлүүд нь
хязгаартай.
 Тэмдэгтийн утгыг дан хашилтад бичнэ.
bool bt;
string pattern = “123acd”;
myChar = pattern[0]; // ‘1’
bt = char.IsLetter(pattern, 3); // true (‘a’)
bt = char.IsNumber(pattern, 3); // false
Өгөгдлийн төрөл – Эгэл төрлүүд
enum
 Тоочих төрөл буюу enum төрөл нь нэр оноосон тогтмол
утгуудын олонлог юм.
 enum төрөл дэх нэрүүдэд утга оноогоогүй бол автоматаар
0,1,2,3 гэх мэт утгатай болно.
 Хандалт нь enum төрлийн хэрэглэгдэх хүрээг тодорхойлно.
Үндсэн хандалт нь internal байдаг ба энэ нь тухайн
ассемблей доторх ямар ч классаас хандахыг зөвшөөрнө.
Public хандалтыг ашигласнаар ямарч ассемблейн ямарч
классаас хандахыг зөвшөөрнө.
 Суурь төрөл нь тогтмолын утга ямар төрөлтэй байхыг
тодорхойлно.
Өгөгдийн төрөл – Эгэл төрлүүд
 enum
Өгөгдлий төрөл - Эгэл төрөл
struct
 Бүтэц төрлийн классын хөнгөн хувилбар гэж
тодорхойлогддог.
 Бүтэц нь классын адил талбар, метод, проперти,
үзэгдэл, байгуулагч гишүүдтэй байна.
 Бүтэц төрөл нь эгэл төрөл учраас програмаас харьцахад
ойр, шууд стект байрлана. Энэ нь хийп санах ойн дахь
өгөгдөл рүү заагчаар дамжуулан хандаснаас илүү
хурдан байдаг сайн талтай.
 Бүтэц төрлийн метод буцах төрөлд ашиглах, параметр
болгон дамжуулахад удаан байдаг муу талтай.
Өгөгдлийн төрөл – Эгэл төрлүүд
 struct
Өгөгдийн төрөл – Заалт төрлүүд
string
 System.String буюу string класс нь 16 бит юникод
тэмдэгтүүдийн дарааллыг төлөөлөх заалт төрөл.
 Тэмдэгт мөрийг тодорхойлохдоо дараах 2 хэлбэрийг
ашиглаж болно.
 Эксэйп хэлбэр – давхар хашилтанд хийх
 path = “c:my documentsnotes.txt” ;
 Ердийн хэлбэр – давхар хашилтын өмнө @ тэмдэг
ашиглах
 path = @“c:my documentsnotes.txt”;
 System.String класс нь тэмдэгт мөртэй ажиллах
методуудыг агуулдаг.
Өгөгдлий төрөл – Заалт төрлүүд
 System.String классын нийтлэг гишүүд
Өгөгдлийн төрөл – Заалт төрлүүд
Array
 Массив нь нэгэн ижил төрлийн өгөгдлүүдийг
хадгалах төрөл
<төрөл> нэр [] = new <төрөл> [n] [{эхний утгууд}]
 System.Array класс нь тэмдэгт мөртэй ажиллах
методуудыг агуулдаг.
 Жишээ:
int[] myIntArray;
myIntArray = new int[5];
int[] myIntArray = new int[5]{2,4,6,8,10};
Int[] myIntArray = {2, 4, 6, 8, 10};
Өгөгдлийн төрөл – Заалт төрлүүд
 System.Array классын нийтлэг гишүүд
Үйлдлүүд
 Локаль хувьсагч зарлах
static void Main() {
int a;
int b = 2, c = 3;
a = 1;
Console.WriteLine( a + b + c );
}
Үйлдлүүд
 Локаль тогтмол зарлах
static void Main() {
const float pi = 3.1415927f;
const int r = 25;
Console.WriteLine(pi * r * r);
}
Үйлдлүүд
 If оператор
static void Main(string[] args) {
if(args.Length == 0) {
Console.WriteLine(“No arguments”);
}
else {
Console.WriteLine(“One or more arguments”);
}
}
Үйлдлүүд
 switch оператор
static void Main(string[] args) {
int n = args.Length;
switch (n) {
case 0:
Console.WriteLine(“No argumetns”);
break;
case 1:
Console.WriteLine(“One argument”);
break;
default :
Console.WriteLine(“{0} arguments”, n);
break;
}
}
Үйлдлүүд
 While оператор
static void Main(string[] args) {
int i = 0;
while(i < args.Length) {
Console.WriteLine(args[i]);
i++;
}
}
Үйлдлүүд
 do оператор
static void Main() {
string s;
do {
s = Console.ReadLine();
if(s != null)
Console.WriteLine(s);
} while(s != null);
}
Үйлдлүүд
 for оператор
static void Main(string[] args) {
for( int i = 0; i < args.Length; i++) {
Console.WriteLine(args[i]);
}
}
Үйлдлүүд
 foreach оператор
static void Main(string[] args) {
foreach( string s in args) {
Console.WriteLine(s);
}
}
Үйлдлүүд
 break оператор
static void Main() {
while(true) {
string s = Console.ReadLine();
if(s == null)
break;
Console.WriteLine(s);
}
}
Үйлдлүүд
 continue оператор
static void Main(string[] args) {
for( int i = 0; i < args.Length; i++) {
if(args[i].StartsWith(“/”))
continue;
Console.WriteLine(args[i]);
}
}
Үйлдлүүд
 goto оператор
static void Main(string[] args) {
int i = 0;
goto check;
loop:
Console.WriteLine(args[i++]);
check:
if(i < args.Length)
goto loop;
}
Үйлдлүүд
 return оператор
static int Add(int a, int b) {
return a+b;
}
static void Main() {
Console.WriteLine(Add(1,2));
return;
}

More Related Content

What's hot (16)

C# hicheelin lekts
C# hicheelin lektsC# hicheelin lekts
C# hicheelin lekts
 
Sw203 Lecture4 Class Object
Sw203 Lecture4  Class ObjectSw203 Lecture4  Class Object
Sw203 Lecture4 Class Object
 
Ush 2014 new3
Ush 2014 new3Ush 2014 new3
Ush 2014 new3
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
Sw203 Lecture9 Encapsulation
Sw203 Lecture9  EncapsulationSw203 Lecture9  Encapsulation
Sw203 Lecture9 Encapsulation
 
Sw203 Lecture5 Class Acess Modifiers
Sw203 Lecture5 Class Acess ModifiersSw203 Lecture5 Class Acess Modifiers
Sw203 Lecture5 Class Acess Modifiers
 
Лекц №6
Лекц №6Лекц №6
Лекц №6
 
си хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р ангиси хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р анги
 
Ci hel
Ci helCi hel
Ci hel
 
Ood lesson12.1 ---------
Ood lesson12.1  ---------Ood lesson12.1  ---------
Ood lesson12.1 ---------
 
Lecture vcp413
Lecture vcp413Lecture vcp413
Lecture vcp413
 
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4
 
Lec1
Lec1Lec1
Lec1
 
Sw203 Lecture10 Polymorphism
Sw203 Lecture10 PolymorphismSw203 Lecture10 Polymorphism
Sw203 Lecture10 Polymorphism
 
си хэлний ойлголт
си хэлний ойлголтси хэлний ойлголт
си хэлний ойлголт
 
Pl lecture3
Pl lecture3Pl lecture3
Pl lecture3
 

Viewers also liked (11)

5 & 6
5 & 65 & 6
5 & 6
 
4 2
4 24 2
4 2
 
7 8
7 87 8
7 8
 
10 11
10 1110 11
10 11
 
12
1212
12
 
Blog ooad-tod
Blog ooad-todBlog ooad-tod
Blog ooad-tod
 
аз жаргал гэж юу вэ
аз жаргал гэж юу вэаз жаргал гэж юу вэ
аз жаргал гэж юу вэ
 
Dynamic web 7
Dynamic web 7Dynamic web 7
Dynamic web 7
 
Dynamic web 5
Dynamic web 5Dynamic web 5
Dynamic web 5
 
Dynamic web 9
Dynamic web 9Dynamic web 9
Dynamic web 9
 
Dynamic web 6
Dynamic web 6Dynamic web 6
Dynamic web 6
 

Similar to 2 (20)

203lec2
203lec2203lec2
203lec2
 
Лекц №5
Лекц №5Лекц №5
Лекц №5
 
U.cs101 алгоритм программчлал-12
U.cs101   алгоритм программчлал-12U.cs101   алгоритм программчлал-12
U.cs101 алгоритм программчлал-12
 
Lec3
Lec3Lec3
Lec3
 
Lekts1
Lekts1Lekts1
Lekts1
 
Lekts1
Lekts1Lekts1
Lekts1
 
Lekts1
Lekts1Lekts1
Lekts1
 
33
3333
33
 
Лаборатор-3
Лаборатор-3Лаборатор-3
Лаборатор-3
 
Lecture3
Lecture3Lecture3
Lecture3
 
Gosexem asuult 09
Gosexem asuult 09Gosexem asuult 09
Gosexem asuult 09
 
Лекц-1
Лекц-1Лекц-1
Лекц-1
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
 
үндсэн функцууд
үндсэн функцуудүндсэн функцууд
үндсэн функцууд
 
Pp Lect9 10 1
Pp Lect9 10 1Pp Lect9 10 1
Pp Lect9 10 1
 
Pp Lect10 11
Pp Lect10 11Pp Lect10 11
Pp Lect10 11
 
Lec5 angi
Lec5 angiLec5 angi
Lec5 angi
 
C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1
 
Програмчлалын хэл
Програмчлалын хэлПрограмчлалын хэл
Програмчлалын хэл
 
U.cs101 лаборатори 1
U.cs101 лаборатори 1U.cs101 лаборатори 1
U.cs101 лаборатори 1
 

More from International Ulaanbaatar University (20)

Lec8
Lec8 Lec8
Lec8
 
Lec7
Lec7 Lec7
Lec7
 
Lec5 6
Lec5 6 Lec5 6
Lec5 6
 
Lec4
Lec4 Lec4
Lec4
 
Lec3
Lec3 Lec3
Lec3
 
Lec2
Lec2 Lec2
Lec2
 
Lec1
Lec1 Lec1
Lec1
 
Визуаль програмчлал бие даалт
Визуаль програмчлал бие даалтВизуаль програмчлал бие даалт
Визуаль програмчлал бие даалт
 
ОХШЗ - Бие Даалт
ОХШЗ - Бие ДаалтОХШЗ - Бие Даалт
ОХШЗ - Бие Даалт
 
Ood lesson11 sequence
Ood lesson11 sequenceOod lesson11 sequence
Ood lesson11 sequence
 
Ood lesson10 statechart
Ood lesson10 statechartOod lesson10 statechart
Ood lesson10 statechart
 
Ood lesson9 activity
Ood lesson9 activityOod lesson9 activity
Ood lesson9 activity
 
Ood lesson7,8 class
Ood lesson7,8 classOod lesson7,8 class
Ood lesson7,8 class
 
Ood lesson6 class
Ood lesson6 classOod lesson6 class
Ood lesson6 class
 
Ood lesson5
Ood lesson5Ood lesson5
Ood lesson5
 
Ood lesson4
Ood lesson4Ood lesson4
Ood lesson4
 
Ood lesson3
Ood lesson3Ood lesson3
Ood lesson3
 
Ood lesson2
Ood lesson2Ood lesson2
Ood lesson2
 
Ood lesson1
Ood lesson1Ood lesson1
Ood lesson1
 
Lec13
Lec13Lec13
Lec13
 

2

  • 2. Хичээлийн агуулга  C# програмчлалын хэлний тухай  C# програмын бүтэц  Өгөгдлийн төрлүүд үйлдлүүд  Үйлдлүүд
  • 3. C# програмчлалын хэл  C# хэл нь .NET Фреймворктэй хамт зохиогдсон програмчлалын хэл  C# хэл нь энгийн боловч орчин үеийн программчлалын асуудлуудыг шийдэхэд тохиромжтой, өндөр бүтээмжтэй хэл  C# хэл нь С++ болон Жава хэлнээс удамшин үүссэн бөгөөд объект хандлагат, компонентод суурилсан, бүтцийн програмчлалуудыг бүгдийг нь дэмжинэ.  Мөн UNICODE кодын системийг дэмжинэ.
  • 4. C# програмын бүтэц  Using түлхүүр үг нь програмд ашиглах класуудын бүтэц замыг зааж өгөх шаардлагагүй болгож хялбарчлан холбож өгдөг.  Програмын логик, өгөгдөл зэрэг бүхий л зүйл нь класс дотор бичигдэх ёстой. Классын хүрээнээс гадуур глобаль хувьсагч гэж байдаггүй.  C# програм бүрт Main() метод хэрэгэтй байдаг. Энэ метод нь програмын эхлэх цэг болдог. Энэ метод нь үргэлж static хувиргагчтай байх ёстой бөгөөд M үсэг нь томоор бичигдэх ёстой.
  • 5. C# програмын бүтэц  Жишээ нь:  static void Main() {……………}  static void Main(string[] args) {……………..}  static int Main() {…………….}  Static int Main(string[] args) {………………} Тайлбар: Main метод нь нэг хуурмаг параметртэй байж болно. Уг параметрийн нэр нь дурын, харин төрөл нь заавал string[] байх ёстой.
  • 6. Өгөгдлийн төрөл  C# хэлний төрлүүдийг  Эгэл төрөл (value type)  Заалт төрөл (reference type)  Заалт ба эгэл төрлүүд нь System.Object классаас удамшсан байдаг.  Заалт төрлүүд нь System.Object классаас шууд удамшсан байдаг.  Эгэл төрлүүд нь System.Object классаас System.ValueType классаар дамжуулан удамшдаг.
  • 8. Өгөгдлийн төрөл  CLR нь заалт ба эгэл төрлүүдийг санах ойд ялгаатай байршуулдаг.  Эгэл төрлийн объект нь стект байрладаг. Эгэл төрөл үүсэхдээ 0 утга авдаг.  Заалт төрлийн объектын хаяг нь стект байрлана. Жинхэнэ утга нь хийп санах ойд байрладаг. Заалт төрөл үүсэхдээ null утга авдаг.  Тайлбар:  Ажиллах горимын үед хувьсагч болон объектуудыг байршуулахад зориулагдсан сул санах ой
  • 9. Өгөгдлийн төрөл  C# хэлний үндсэн төрлүүд нь фреймворкийн бүтэц төрлүүд байдаг. Уг бүтцүүдийн гишүүд нь тухайн төрөл дээр ажиллах нэмэлт боломжуудыг бий болгодог.  Тодорхой төрлийн утгуудын ард дагавар үсэг тавихыг шаарддаг.  Тухайн төрлийн зарлахад тухайн төрлийн анхны байгуулагч дуудагдаж, анхны утга тодорхойлогдоно.  C# хэлний төрлүүдтэй харгалзах фреймворкийн төрлүүд байна.
  • 10. Өгөгдлийн төрөл – Эгэл төрлүүд
  • 11. Өгөгдлийн төрөл – Эгэл төрлүүд  byte, sbyte, short, ushort, int, uint, long, ulong  Нэмэлт боломжууд:  sbyte sb = sbyte.MinValue;  string s = “15”;  byte b = byte.Parse(s);  Console.WriteLine(sb); // -128  Console.WriteLine(B); // 15  short sh = short.MaxValue;  console.WriteLine(sh); // 32767
  • 12. Өгөгдлийн төрөл – Эгэл төрлүүд  float, double  float: 1.5*10-45 –c 3.4*1038 хүртэл утга бүхий 7 цифрийн нарийвчлалтай бодит тоо  double: 5*10-324 –с 1.7*10308 хүртэл утга бүхий 15-16 цифрийн нарийвчлалтай бодит тоо  float төрлийн тогтмол утгын ард F үсэг тавина.  double төрлийн тогтмол утгын ард D үсэг тавина.  Анхны утга: float: 0.0f, double: 0.0d  Бодит тоон үйлдлийн үр дүн тодорхой бус үед NaN(Not a Number) утга буцаана.
  • 13. Өгөгдлийн төрөл – Эгэл төрлүүд decimal  Авах утгын хязгаар:  decimal: 128 бит хэмжээтэй, 28 цифрийн нарийвчлалтай бодит тоон төрөл  decimal төрлийн тогтмол утгын ард M үсэг тавина.  Анхны утга: decimal: 0.0m  Санхүүгийн болон мөнгөний тооцоолол хийхэд тохиромжтой төрөл decimal iRate = 3.9834M; iRate = decimal.Round(iRate,2); decimal p = decimal.Parse(“100.05”);
  • 14. Өгөгдлийн төрөл – Эгэл төрлүүд bool  Авах утгын хязгаар:  bool: true, false  bool төрлийн утгыг бүхэл тоон төрөл рүү хөрвүүлж болохгүй. bool bt = true; string bStr = bt.ToString(); // “true” bt = (bool) 1; // Буруу
  • 15. Өгөгдийн төрөл – Эгэл төрлүүд  char: 0…..65535 хоорондох 16 битийн тэмдэггүй бүхэл тоон утга  Дээрх утгуудад юникод тэмдэгтүүд харгалзана.  ushort төрөлтэй адил утга авах хэдий ч хийх үйлдлүүд нь хязгаартай.  Тэмдэгтийн утгыг дан хашилтад бичнэ. bool bt; string pattern = “123acd”; myChar = pattern[0]; // ‘1’ bt = char.IsLetter(pattern, 3); // true (‘a’) bt = char.IsNumber(pattern, 3); // false
  • 16. Өгөгдлийн төрөл – Эгэл төрлүүд enum  Тоочих төрөл буюу enum төрөл нь нэр оноосон тогтмол утгуудын олонлог юм.  enum төрөл дэх нэрүүдэд утга оноогоогүй бол автоматаар 0,1,2,3 гэх мэт утгатай болно.  Хандалт нь enum төрлийн хэрэглэгдэх хүрээг тодорхойлно. Үндсэн хандалт нь internal байдаг ба энэ нь тухайн ассемблей доторх ямар ч классаас хандахыг зөвшөөрнө. Public хандалтыг ашигласнаар ямарч ассемблейн ямарч классаас хандахыг зөвшөөрнө.  Суурь төрөл нь тогтмолын утга ямар төрөлтэй байхыг тодорхойлно.
  • 17. Өгөгдийн төрөл – Эгэл төрлүүд  enum
  • 18. Өгөгдлий төрөл - Эгэл төрөл struct  Бүтэц төрлийн классын хөнгөн хувилбар гэж тодорхойлогддог.  Бүтэц нь классын адил талбар, метод, проперти, үзэгдэл, байгуулагч гишүүдтэй байна.  Бүтэц төрөл нь эгэл төрөл учраас програмаас харьцахад ойр, шууд стект байрлана. Энэ нь хийп санах ойн дахь өгөгдөл рүү заагчаар дамжуулан хандаснаас илүү хурдан байдаг сайн талтай.  Бүтэц төрлийн метод буцах төрөлд ашиглах, параметр болгон дамжуулахад удаан байдаг муу талтай.
  • 19. Өгөгдлийн төрөл – Эгэл төрлүүд  struct
  • 20. Өгөгдийн төрөл – Заалт төрлүүд string  System.String буюу string класс нь 16 бит юникод тэмдэгтүүдийн дарааллыг төлөөлөх заалт төрөл.  Тэмдэгт мөрийг тодорхойлохдоо дараах 2 хэлбэрийг ашиглаж болно.  Эксэйп хэлбэр – давхар хашилтанд хийх  path = “c:my documentsnotes.txt” ;  Ердийн хэлбэр – давхар хашилтын өмнө @ тэмдэг ашиглах  path = @“c:my documentsnotes.txt”;  System.String класс нь тэмдэгт мөртэй ажиллах методуудыг агуулдаг.
  • 21. Өгөгдлий төрөл – Заалт төрлүүд  System.String классын нийтлэг гишүүд
  • 22. Өгөгдлийн төрөл – Заалт төрлүүд Array  Массив нь нэгэн ижил төрлийн өгөгдлүүдийг хадгалах төрөл <төрөл> нэр [] = new <төрөл> [n] [{эхний утгууд}]  System.Array класс нь тэмдэгт мөртэй ажиллах методуудыг агуулдаг.  Жишээ: int[] myIntArray; myIntArray = new int[5]; int[] myIntArray = new int[5]{2,4,6,8,10}; Int[] myIntArray = {2, 4, 6, 8, 10};
  • 23. Өгөгдлийн төрөл – Заалт төрлүүд  System.Array классын нийтлэг гишүүд
  • 24. Үйлдлүүд  Локаль хувьсагч зарлах static void Main() { int a; int b = 2, c = 3; a = 1; Console.WriteLine( a + b + c ); }
  • 25. Үйлдлүүд  Локаль тогтмол зарлах static void Main() { const float pi = 3.1415927f; const int r = 25; Console.WriteLine(pi * r * r); }
  • 26. Үйлдлүүд  If оператор static void Main(string[] args) { if(args.Length == 0) { Console.WriteLine(“No arguments”); } else { Console.WriteLine(“One or more arguments”); } }
  • 27. Үйлдлүүд  switch оператор static void Main(string[] args) { int n = args.Length; switch (n) { case 0: Console.WriteLine(“No argumetns”); break; case 1: Console.WriteLine(“One argument”); break; default : Console.WriteLine(“{0} arguments”, n); break; } }
  • 28. Үйлдлүүд  While оператор static void Main(string[] args) { int i = 0; while(i < args.Length) { Console.WriteLine(args[i]); i++; } }
  • 29. Үйлдлүүд  do оператор static void Main() { string s; do { s = Console.ReadLine(); if(s != null) Console.WriteLine(s); } while(s != null); }
  • 30. Үйлдлүүд  for оператор static void Main(string[] args) { for( int i = 0; i < args.Length; i++) { Console.WriteLine(args[i]); } }
  • 31. Үйлдлүүд  foreach оператор static void Main(string[] args) { foreach( string s in args) { Console.WriteLine(s); } }
  • 32. Үйлдлүүд  break оператор static void Main() { while(true) { string s = Console.ReadLine(); if(s == null) break; Console.WriteLine(s); } }
  • 33. Үйлдлүүд  continue оператор static void Main(string[] args) { for( int i = 0; i < args.Length; i++) { if(args[i].StartsWith(“/”)) continue; Console.WriteLine(args[i]); } }
  • 34. Үйлдлүүд  goto оператор static void Main(string[] args) { int i = 0; goto check; loop: Console.WriteLine(args[i++]); check: if(i < args.Length) goto loop; }
  • 35. Үйлдлүүд  return оператор static int Add(int a, int b) { return a+b; } static void Main() { Console.WriteLine(Add(1,2)); return; }