SlideShare uma empresa Scribd logo
1 de 79
Лекц № 7
Тэмдэгт мөр ба тэмдэгт
Хэлбэржүүлсэн оролт/гаралт
А. Хүдэр
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгт боловсруулах сан
 Тэмдэгт мөр хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
212/16/2015Vanderbilt university
 Стандарт сангийн зарим функцууд
◦ Тэмдэгт мөр болон тэмдэгтийг хялбар аргаар
боловсруулах
◦ Програм нь тэмдэгт, тэмдэгт мөр, текст мөр,
санах ойн блокийг боловсруулж чадна
 Эдгээр техникүүд нь дараах зүйл
хэрэглэгдэнэ
◦ Текст редактор
◦ Хуудсын загвар гаргагч
◦ Үсэг өрөх програмууд
312/16/2015Vanderbilt university
 Тэмдэгт
◦ Програмын үндсэн блок
 Програм бүр утгатайгаар бүлэглэгдсэн тэмдэгтүүдийн
дараалал юм
◦ Тэмдэгт тогтмол
 Дан дусал дотор тэмдэгт хэлбэрээр дүрслэгдсэн бүхэл тоо
 „z‟ нь z-ийн бүхэл утгыг илэрхийлнэ
 Тэмдэгт мөр
◦ Нэг бүхэл гэж тооцогдох тэмдэгтүүдийн дараалал
 Үсэг, цифр болон тусгай тэмдэгтүүдийг агуулж болно (*, /, $)
 Үсэгчилсэн тэмдэгт мөр нь (тогтмол тэмдэгт мөр) давхар
дусал дотор бичигдэнэ
 “Hello”
 Тэмдэгт мөр нь тэмдэгтэн хүснэгт юм
 Тэмдэгт мөр-эхний тэмдэгтийн заагч
 Тэмдэгт мөрийн утга нь эхний тэмдэгтийн хаяг юм
412/16/2015Vanderbilt university
 Тэмдэгт мөрийг зарлах
◦ Тэмдэгтэн хүснэгт хэлбэрээр эсвэл char * төрөлтэйгээр
зарлана
char color[] = "blue";
char *colorPtr = "blue";
◦ Тэмдэгтэн хүснэгт хэлбэрээр зарлагдсан тэмдэгт мөр
нь „0‟ тэмдэгтээр төгсөнө
 color нь 5-н элементтэй
 Тэмдэгт мөрийг оруулах
◦ scanf-ийг : scanf("%s", word); гэж хэрэглэнэ
 Оролтыг word[] руу хуулна
 & үйлдэл хэрэггүй (учир нь тэмдэгт мөр бол заагч)
◦ Хүснэгт дотроо „0‟-д зориулсан зай үлдээх
512/16/2015Vanderbilt university
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгт боловсруулах сан
 Тэмдэгт мөр хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
612/16/2015Vanderbilt university
 Тэмдэгт боловсруулах сан
 Дараагийн хуудас дээр <ctype.h> дэх бүх
функцийг жагсаасан хүснэгтийг үзүүлэв
712/16/2015Vanderbilt university
812/16/2015Vanderbilt university
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгт боловсруулах сан
 Тэмдэгт мөр хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
912/16/2015Vanderbilt university
 Хувиргах функцууд
◦ <stdlib.h> - д байдаг (ерөнхий хэрэгслийн сан)
 Цифрээс бүтсэн тэмдэгт мөрийг бүхэл тоо
болон бутархай тоо руу хөрвүүлэх
1012/16/2015Vanderbilt university
 Анхааруулга: Хэрэв хувиргах гэж байгаа
утгыг дүрслэх аргагүй бол, өөрөөр хэлбэл
эхний тэмдэгт нь үсэг байвал atof функц
яах нь тодорхойгүй байдаг
11
atof функц тэмдэгт мөрийг
double болгон хувиргана
12/16/2015Vanderbilt university
12
atoi функц тэмдэгт мөрийг int
болгон хувиргана
12/16/2015Vanderbilt university
13
atol функц тэмдэгт мөрийг long
болгон хувиргана
12/16/2015Vanderbilt university
14
strtod функц тэмдэгт мөрийн
хэсгийг double болгон хувиргана
12/16/2015Vanderbilt university
15
strtol функц тэмдэгт мөрийн хэсгийг
long болгон хувиргана
суурь Тайлбар:
1. Хоѐр дахь аргументыг NULL
гэж дамжуулах нь тэмдэгт
мөрийн үлдсэн хэсгийг
орхихыг заана
2. Гурав дахь аргумент нь
хөрвүүлэгдсэн утга 8-тын,
аравтын эсвэл 16-тын
тооллын системд байж
болохыг заана.
12/16/2015Vanderbilt university
16
strtoul функц тэмдэгт
мөрийн хэсгийг unsigned
long болгон хувиргана
12/16/2015Vanderbilt university
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгт боловсруулах сан
 Тэмдэгт мөр хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
1712/16/2015Vanderbilt university
 <stdio.h> дэх функцууд
 Тэмдэгт болон тэмдэгт мөр төрлийн өгөгдлийн
боловсруулахад зориулагдсан
1812/16/2015Vanderbilt university
 Функц өөрийн бие дотор өөрийгөө дуудах
 Үндсэн тохиолдлыг хүртэл өөрийгөө
дуудсаар байна
 Диаграм ашиглан үйлдлийг нь шинжилнэ
1912/16/2015Vanderbilt university
20
gets нь хэрэглэгчээс нэг мөр текст
хүлээн авна
12/16/2015Vanderbilt university
21
putchar нь дэлгэцэн дээр нэг тэмдэгт
хэвлэнэ
12/16/2015Vanderbilt university
 Алхам 1: reverse(“abc”)
◦ Алхам 2: reverse(&sPtr[1])  reverse(“bc”) (Эхэлж хийх)
◦ putchar(sPtr[0])  putchar(„a‟) (Дараа нь хийх)
 Алхам 2: reverse(“bc”)
◦ Алхам 3: reverse(&sPtr[1])  reverse(“c”) (Эхэлж хийх)
◦ putchar(sPtr[0])  putchar(„b‟) (Дараа нь хийх)
 Алхам 3: reverse(“c”)
◦ Алхам 4: reverse(&sPtr[1])  reverse(“0”) (Эхэлж хийх)
◦ putchar(sPtr[0])  putchar(„c‟) (Дараа нь хийх)
 Алхам 4: reverse(“0”)
◦ Үндсэн тохиолдол  return
 Алхам 4 Алхам 3  Алхам 2  Алхам 1 “cba”
2212/16/2015Vanderbilt university
23
puts нь нэг мөр текстийг
дэлгэц дээр хэвлэнэ
getchar хэрэглэгчээс нэг тэмдэгтийг
уншина
12/16/2015Vanderbilt university
2412/16/2015Vanderbilt university
25
sprintf нь нэг мөр текстийг
printf дэлгэцэн дээр текст
хэвлэдэг шиг хүснэгт рүү
бичнэ
12/16/2015Vanderbilt university
26
sscanf нь нэг мөр текстийг scanf
хэрэглэгчээс текст уншдаг шиг
хүснэгтээс уншина
12/16/2015Vanderbilt university
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгт боловсруулах сан
 Тэмдэгт мөр хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
2712/16/2015Vanderbilt university
 Тэмдэгт мөр боловсруулах санд дараах функцууд
байдаг
◦ Тэмдэгт мөр төрлийн өгөгдлийг боловсруулах
◦ Тэмдэгт мөр хайх
◦ Тэмдэгт мөрийг токен болгон задлах
◦ Тэмдэгт мөрийн уртыг олох
2812/16/2015Vanderbilt university
29
strcpy нь x тэмдэгт
мөрийг y тэмдэгтэн
хүснэгт рүү хуулна
strncpy x тэмдэгт мөрийн 14
тэмдэгтийг z тэмдэгтэн
хүснэгт рүү хуулж байна
strncpy нь автоматаар null
тэмдэгтийг нэмэхгүй байгааг
анхаараарай
12/16/2015Vanderbilt university
30
strcat нь s2 тэмдэгт мөрийг s1
тэмдэгт мөрийн төгсгөлд нэмнэ
strncat s2 тэмдэгт мөрийн эхний 6
тэмдэгтийг s3 тэмдэгт мөрийн
төгсгөлд нэмж байна. Төгсгөлийн null
тэмдэгтийг автоматаар үр дүнгийн
төгсгөлд нэмнэ.
12/16/2015Vanderbilt university
3112/16/2015Vanderbilt university
 Тэмдэгт мөрүүдийг харьцуулах
◦ Компьютер тэмдэгт мөр дэх тэмдэгтүүдийн
ASCII кодыг харьцуулна
◦ int strcmp( const char *s1, const char *s2 );
 s1 тэмдэгт мөрийг s2-той харьцуулна
 Хэрэв s1<s2 бол сөрөг утга, s1==s2 бол тэгийг, s1>s2 бол
эерэг утга буцаана
◦ int strncmp( const char *s1, const char *s2, size_t n );
 s1-ийн эхний n тэмдэгтийг s2-ынхтой харьцуулна
 Дээрхтэй ижил утга буцаана
3212/16/2015Vanderbilt university
33
strcmp нь s1 тэмдэгт мөрийг s2
тэмдэгт мөртэй харьцуулна
12/16/2015Vanderbilt university
34
strncmp s1 тэмдэгт мөрийн
эхний 6 тэмдэгтийг s3 тэмдэгт
мөрийн эхний 6 тэмдэгттэй
харьцуулж байна
12/16/2015Vanderbilt university
3512/16/2015Vanderbilt university
3612/16/2015Vanderbilt university
3712/16/2015Vanderbilt university
3812/16/2015Vanderbilt university
39
strstr string1 тэмдэгт мөр дотор string2 тэмдэгт мөр
олдох string1 тэмдэгт мөрийн эхний байрлалаас
хойш байрлах хэсгийг буцааж байна
12/16/2015Vanderbilt university
40
strtok нь string-ийг хоосон зай
ашиглан “токенуудад” задална
strtok – ийг NULL аргументтайгаар дахин
дуудсанаар strtok-ийг өмнө нь дуудахад
хадгалагдсан байрлалаас эхлэн цааш
токенуудад үргэлжлүүлэн задлана
12/16/2015Vanderbilt university
4112/16/2015Vanderbilt university
4212/16/2015Vanderbilt university
43
strlen нь string1-ийн уртыг буцаана
12/16/2015Vanderbilt university
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгт боловсруулах сан
 Тэмдэгт мөр хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
4412/16/2015Vanderbilt university
 Урсгал
◦ Нэг мөр болон зохион байгуулагдсан
тэмдэгтүүдийн дараалал
 Мөр бүр тэг эсвэл түүнээс олон тэмдэгтүүдээс тогтох
ба шинэ мөр гэсэн тэмдэгтээр төгсөнө
 ANSI C дор хаяж 254 тэмдэгттэй урсгал дэмждэг
◦ Бүх оролт болон гаралтыг гүйцэтгэнэ
◦ Чиглэлийг нь өөрчилж болно
 Стандарт оролт – гар
 Стандарт гаралт – дэлгэц
 Стандарт алдаа - дэлгэц
4512/16/2015Vanderbilt university
 printf
◦ Гаралтын хэлбэрийг зааж өгөх
 Хувиргалтын тодорхойлогчид: флаг, талбарын өргөн,
нарийвчлал гэх мэт
◦ Тоймлолт, багананд хэвлэх, зүүн баруун зэрэгцүүлэлт,
тэмдэгт тогтмол оруулах, экспоненциал хэлбэр хэрэглэх,
16-тын формат, тогтмол өргөн ба нарийвчлал
 Хэлбэр
◦ printf( хэлбэржүүлэлтийг удирдах тэмдэгт мөр, бусад
аргументууд);
◦ Хэлбэржүүлэлтийг удирдах тэмдэгт мөр: гаралтын
хэлбэрийг зааж өгнө
◦ Бусад аргументууд: хэлбэржүүлэлтийг удирдах тэмдэгт
мөрөнд байгаа хувиргалтын тодорхойлогчид харгалзана
 Тодорхойлогч бүр хувийн тэмдэгээр (%) эхэлж хувиргалтын
заагчаар төгсөнө.
4612/16/2015Vanderbilt university
 Бүхэл тоо
◦ Бүхэл хэсэг (бутархайн таслалгүй): 25, 0, -9
◦ Эерэг, сөрөг эсвэл тэг
◦ Үндсэн тохиргооны үед хасах тэмдгийг л
хэвлэдэг (үүнийг өөрчлөхийг удахгүй үзнэ)
4712/16/2015Vanderbilt university
4812/16/2015Vanderbilt university
49
d ба i нь тэмдэгтэй бүхэл тоог заана
s нь short –ыг заана
l нь long–ыг заана
o нь 8–тын тооллын
системд байгааг заана
u нь тэмдэггүй бүхэл тоог
заана
12/16/2015Vanderbilt university
Тайлбар: -455 утгыг %u гэж уншихад (15-р мөр)
тэмдэггүй тоо руу хувиргагдан 4294966841 гэсэн
утгатай болно. Иймд тэмдэгтэй бүхэл тоог
тэмдэггүй бүхэл тооны хувиргалтыг
тодорхойлогчоор унших нь алдаанд хүргэнэ.
50
x ба X нь 16-тын бүхэл тоог
заана
12/16/2015Vanderbilt university
 Хөвөх таслалтай тоо
◦ Аравтын бутархайн таслалтай байна (33.5)
◦ Экспоненциал хэлбэр (ШУ-ны хэлбэрийн компьютер
дэх хувилбар)
 150.3 нь ШУ-ны хэлбэрт 1.503 x 102 болно
 150.3 нь экспоненциал хэлбэрт 1.503E+02 болно (E нь
экспенциал гэсэн үг)
 e эсвэл E-г хэрэглэнэ
◦ f – хөвөх таслалтай тоог таслалын урд ядаж нэг
аравтын оронтой байхаар хэвлэх
◦ g (эсвэл G) нь f буюу e хэлбэрээр, сүүлд байгаа
тэгүүдийг хасч хэвлэнэ (1.2300 нь 1.23 болно)
 Хэрэв зэрэг нь -4-өөс бага, эсвэл нарийвчлалаас их буюу
тэнцүү үед экспоненциал хэлбэрийг хэрэглэнэ
(нарийвчлалын үндсэн утга нь таслалаас хойш 6 цифр
байдаг)
5112/16/2015Vanderbilt university
5212/16/2015Vanderbilt university
53
e ба E нь зэрэгтэй бичиглэлийг
заана
f нь бэхлэгдсэн цэгтэй
бичиглэлийг заана
g ба G нь тооноос хамааран зэрэгтэй
эсвэл бэхлэгдсэн цэгтэй бичиглэлийг
хэрэглэхийг заана
12/16/2015Vanderbilt university
 c
◦ char төрлийн аргументыг хэвлэнэ
◦ Тэмдэгт мөрийн эхний тэмдэгтийг хэвлэх зорилгоор
хэрэглэгдэхгүй
 s
◦ Аргументаараа char төрлийн заагчийг шаардана
◦ NULL („0‟) тэмдэгт хүртэл бүх тэмдэгтийг хэвлэнэ
◦ char төрлийн аргументыг хэвлэж чадахгүй
 Тайлбар
◦ Дан дусал нь тэмдэгт төрлийн тогтмолд хэрэглэгдэнэ
(„z‟)
◦ Давхар дусал нь “z” (энэ нь үнэндээ „z‟ ба „0‟ гэсэн
хоѐр тэмдэгтээс тогтоно) гэх мэт тэмдэгт мөрөнд
зориулагдсан
5412/16/2015Vanderbilt university
55
c нь тэмдэгт хэвлэгдэхийг
заана
s нь тэмдэгт мөр хэвлэгдэхийг
заана
12/16/2015Vanderbilt university
 p
◦ Заагчийн утгыг (өөрөөр хэлбэл хаягийг) тодорхой
хэлбэрээр үзүүлнэ (ихэнх системүүдэд 10-тын тооллын
системээс 16-тын тооллын системийг илүү хэрэглэнэ)
 n
◦ Тухайн printf үйлдлийн хэвлээд байгаа тэмдэгтийн тоог
хадгална
◦ Аргументаараа бүхэл тоон төрөл руу заах хувьсагчийг
шаардана
◦ %n тодорхойлогчоор юуг ч хэвлэхгүй
◦ printf – ийг дуудах бүрд дараах утгыг буцаана
 Хэвлэж гаргасан тэмдэгтийн тоо
 Хэрэв алдаа гарсан бол сөрөг тоо
 %
◦ Хувийн тэмдэгтийг хэвлэх
◦ %%
5612/16/2015Vanderbilt university
57
p нь санах ойн хаяг хэвлэгдэхийг
заана
n нь хэвлэгдсэн тэмдэгтийн тоог хадгална
% нь хувийн (%) тэмдэгтийг хэвлэнэ
12/16/2015Vanderbilt university
5812/16/2015Vanderbilt university
 Талбарын өргөн
◦ Өгөгдлийг хэвлэх талбарын өргөн
◦ Хэрэв өргөн нь өгөгдлөөс их бол үндсэн
тохиргоогоор өгөгдөл баруун талд
зэрэгцүүлэгдэнэ
 Хэрэв талбар нь жижиг бол өгөгдөл багтахаар
болгож томруулна
 Хасах тэмдэг нь талбарт нэг тэмдэгтийн зай эзэлнэ
◦ Бүхэл тооны өргөнийг % тэмдэгт болон
хувиргалтын тодорхойлогчийн хооронд бичнэ
◦ %4d – 4 тэмдэгтийн өргөнтэй талбар
5912/16/2015Vanderbilt university
60
Си хэл хасах тэмдгийг мөн тэмдэгтэд
тооцдогийг анхаар
4 өргөнтэй талбар зааж өгснөөр Си
өгөгдсөн тоог 4 тэмдэгтийн зайд
багтаахыг хичээх болно
12/16/2015Vanderbilt university
6112/16/2015Vanderbilt university
 Нарийвчлал
◦ Өгөгдлийн төрлөөс хамааран утга нь өөрчлөгдөнө
◦ Бүхэл тоо (үндсэн утга нь 1)
 Хэвлэгдэх цифрүүдийн хамгийн бага тоо
 Хэрэв өгөгдөл нь бага бол өмнө нь тэгүүдийг нэмнэ
◦ Хөвөх таслалтай тоо
 Таслалын ард хэвлэгдэх оронгийн тоо (e болон f)
 g – гийн хувьд таслалаас хойш хэвлэгдэх оронгийн тооны
хамгийн их утга
 Хөвөх таслалтай тоог анхны утгынх нь нарийвчлалаас бага
нарийвчлалтайгаар хэвлэх үед утгыг нь тоймлоно
◦ Тэмдэгт мөр
 Тэмдэгт мөрөөс хэвлэх тэмдэгтүүдийн тооны хамгийн их утга
◦ Хэлбэр
 %-ийн дараа цэг тавьж, дараа нь нарийвчлалын утгаа бичнэ
%.3f
6212/16/2015Vanderbilt university
 Талбарын өргөн ба нарийвчлал
◦ Хоѐуланг нь зааж өгч болно
 %min_width.precision
%5.3f
◦ Талбарын өргөн сөрөг утгатай бол зүүн талд нь
зэрэгцүүлнэ
◦ Талбарын өргөн эерэг утгатай бол баруун талд нь
зэрэгцүүлнэ
◦ Нарийвчлал нь эерэг тоо байх ѐстой
◦ Талбарын өргөн болон нарийвчлалыг заахад
илэрхийлэл ашиглаж болно
 Талбарын өргөн буюу нарийвчлал заах байрлалд од (*)
тавих
 Аргументын жагсаалт дахь int утгыг авч хэрэглэнэ
 Жишээ:
printf( "%*.*f", 7, 2, 98.736 );
6312/16/2015Vanderbilt university
64
Бүхэл тооны хувьд нарийвчлал нь хамгийн
багадаа хэдэн тэмдэгт хэвлэхийг заана
g тодорхойлогчийн хувьд нарийвчлал нь
таслалаас хойш хамгийн ихдээ хэдэн цифр
хэвлэхийг удирдана
f болон e тодорхойлогчийн хувьд
нарийвчлал нь таслалаас хойш хэдэн цифр
хэвлэхийг удирдана
12/16/2015Vanderbilt university
65
Тэмдэгт мөрийн хувьд нарийвчлал нь
хамгийн ихдээ хэдэн тэмдэгт хэвлэхийг
заана
12/16/2015Vanderbilt university
 Флагууд
◦ Хэлбэржүүлэлтэнд туслах үүрэгтэй
◦ Флагийг хувийн тэмдгийн баруун талд тавина
◦ Хэд хэдэн флагийг хослуулан ашиглаж болно
6612/16/2015Vanderbilt university
67
- флаг нь талбар дахь тэмдэгтүүдийг
зүүн талд нь зэрэгцүүлнэ
12/16/2015Vanderbilt university
68
+ флаг нь эерэг тоог заавал + тэмдэгтэй
хэвлүүлнэ
12/16/2015Vanderbilt university
 Тогтмол тэмдэгт мөрийг хэвлэх
◦ Ихэнх тэмдэгтүүдийг хэвлэж болно
◦ “ гэх мэт тэмдэгтүүд дээр асуудал гарна
◦ Тусгай тэмдэгтүүдийг ашиглан дүрслэх ѐстой
 Ташуу зураасын ард тусгай тэмдэгтээ бичнэ
6912/16/2015Vanderbilt university
7012/16/2015Vanderbilt university
 scanf
◦ Оролтыг гаралттай төстэйгээр хэлбэржүүлж болно
◦ scanf-ийн хувиргалтын тодорхойлогчид нь
printf-ийнхээс бага зэрэг ялгаатай байна
7112/16/2015Vanderbilt university
7212/16/2015Vanderbilt university
7312/16/2015Vanderbilt university
74
d нь аравтын бүхэл тоо орж ирэхийг заана
i нь бүхэл тоо орж ирэхийг заана
o нь наймтын бүхэл тоо орж ирэхийг заана
u нь тэмдэггүй аравтын бүхэл тоо орж ирэхийг заана
x нь арван зургаатын бүхэл тоо орж ирэхийг заана
12/16/2015Vanderbilt university
75
e, f, g нь бутархай тоо орж ирэхийг заана
l нь long эсвэл long double тоо орж ирэхийг заана
12/16/2015Vanderbilt university
76
c нь тэмдэгт орж ирэхийг заана
s нь тэмдэгт мөр орж ирэхийг заана
12/16/2015Vanderbilt university
77
2 урттай талбар нь Си хэлэнд оролтын эхний
хоѐр тэмдэгтийг уншихыг заана
12/16/2015Vanderbilt university
78
scanf * ашигласан хоѐр оролтыг орхино
12/16/2015Vanderbilt university
 Тэмдэгт мөр ба тэмдэгт
 Тэмдэгтийг боловсруулах сан
 Тэмдэгт мөрийг хувиргах функцууд
 Стандарт оролт/гаралтын сангийн
функцууд
 Тэмдэгт мөр боловсруулах сангийн тэмдэгт
мөртэй ажиллах функцууд
 Хэлбэржүүлсэн оролт/гаралт
7912/16/2015Vanderbilt university

Mais conteúdo relacionado

Mais procurados

U.cs101 алгоритм программчлал-1(1)
U.cs101   алгоритм программчлал-1(1)U.cs101   алгоритм программчлал-1(1)
U.cs101 алгоритм программчлал-1(1)Badral Khurelbaatar
 
U.cs101 алгоритм программчлал-2
U.cs101   алгоритм программчлал-2U.cs101   алгоритм программчлал-2
U.cs101 алгоритм программчлал-2Badral Khurelbaatar
 
бие даалт № 1 borland c++
бие даалт № 1 borland c++бие даалт № 1 borland c++
бие даалт № 1 borland c++2011bonus
 
си хэлний ойлголт
си хэлний ойлголтси хэлний ойлголт
си хэлний ойлголтbadral_0430
 
Салаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогуудСалаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогуудБаярсайхан Л
 
U.cs101 алгоритм программчлал-10
U.cs101   алгоритм программчлал-10U.cs101   алгоритм программчлал-10
U.cs101 алгоритм программчлал-10Badral Khurelbaatar
 
Өгөгдлийн бүтэц
Өгөгдлийн бүтэцӨгөгдлийн бүтэц
Өгөгдлийн бүтэцMuuluu
 
алгоритм
алгоритмалгоритм
алгоритмNarantungaa
 
Ci prog tolgoi file хичээл 2
Ci prog tolgoi file хичээл 2Ci prog tolgoi file хичээл 2
Ci prog tolgoi file хичээл 2Urantuya Purevtseren
 
Arifmetik progressiin ehnii n gishuunii niilber
Arifmetik progressiin ehnii n gishuunii niilberArifmetik progressiin ehnii n gishuunii niilber
Arifmetik progressiin ehnii n gishuunii niilbershand1_zoko
 

Mais procurados (20)

C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1
 
U.cs101 алгоритм программчлал-1(1)
U.cs101   алгоритм программчлал-1(1)U.cs101   алгоритм программчлал-1(1)
U.cs101 алгоритм программчлал-1(1)
 
U.cs101 алгоритм программчлал-2
U.cs101   алгоритм программчлал-2U.cs101   алгоритм программчлал-2
U.cs101 алгоритм программчлал-2
 
Smallbasic
SmallbasicSmallbasic
Smallbasic
 
6 shugaman
6 shugaman6 shugaman
6 shugaman
 
бие даалт № 1 borland c++
бие даалт № 1 borland c++бие даалт № 1 borland c++
бие даалт № 1 borland c++
 
си хэлний ойлголт
си хэлний ойлголтси хэлний ойлголт
си хэлний ойлголт
 
Салаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогуудСалаалсан алгоритмын бодлогууд
Салаалсан алгоритмын бодлогууд
 
U.cs101 алгоритм программчлал-10
U.cs101   алгоритм программчлал-10U.cs101   алгоритм программчлал-10
U.cs101 алгоритм программчлал-10
 
Өгөгдлийн бүтэц
Өгөгдлийн бүтэцӨгөгдлийн бүтэц
Өгөгдлийн бүтэц
 
Лекц №11
Лекц №11Лекц №11
Лекц №11
 
алгоритм 8
алгоритм 8алгоритм 8
алгоритм 8
 
алгоритм
алгоритмалгоритм
алгоритм
 
Ci prog tolgoi file хичээл 2
Ci prog tolgoi file хичээл 2Ci prog tolgoi file хичээл 2
Ci prog tolgoi file хичээл 2
 
Database 1
Database 1Database 1
Database 1
 
Програмчлалын хэл
Програмчлалын хэлПрограмчлалын хэл
Програмчлалын хэл
 
хичээл № 5 powerpoint
хичээл № 5 powerpointхичээл № 5 powerpoint
хичээл № 5 powerpoint
 
процент сэдвийг заах арга зүй
процент сэдвийг заах арга зүйпроцент сэдвийг заах арга зүй
процент сэдвийг заах арга зүй
 
Arifmetik progressiin ehnii n gishuunii niilber
Arifmetik progressiin ehnii n gishuunii niilberArifmetik progressiin ehnii n gishuunii niilber
Arifmetik progressiin ehnii n gishuunii niilber
 
C++
C++C++
C++
 

Destaque

u.cs101 "Алгоритм ба програмчлал" Лекц №5
u.cs101 "Алгоритм ба програмчлал" Лекц №5u.cs101 "Алгоритм ба програмчлал" Лекц №5
u.cs101 "Алгоритм ба програмчлал" Лекц №5Khuder Altangerel
 
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4Khuder Altangerel
 
u.cs101 "Алгоритм ба програмчлал" Лекц №6
u.cs101 "Алгоритм ба програмчлал" Лекц №6u.cs101 "Алгоритм ба програмчлал" Лекц №6
u.cs101 "Алгоритм ба програмчлал" Лекц №6Khuder Altangerel
 
u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3Khuder Altangerel
 
u.cs101 "Алгоритм ба програмчлал" Лекц №2
u.cs101 "Алгоритм ба програмчлал" Лекц №2u.cs101 "Алгоритм ба програмчлал" Лекц №2
u.cs101 "Алгоритм ба програмчлал" Лекц №2Khuder Altangerel
 
u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1Khuder Altangerel
 
Hmm Tutorial
Hmm TutorialHmm Tutorial
Hmm Tutorialjefftang
 
IOI 2016 "Молекул" бодлогын бодолт
IOI 2016 "Молекул" бодлогын бодолтIOI 2016 "Молекул" бодлогын бодолт
IOI 2016 "Молекул" бодлогын бодолтKhuder Altangerel
 
Lecture4
Lecture4Lecture4
Lecture4orgil
 
Цалингийн бүртгэлийн систем
Цалингийн бүртгэлийн системЦалингийн бүртгэлийн систем
Цалингийн бүртгэлийн системAltangerel Bilguun
 
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
Жава хэлний сурах бичиг Java helnii surah bichig MongolЖава хэлний сурах бичиг Java helnii surah bichig Mongol
Жава хэлний сурах бичиг Java helnii surah bichig MongolGantulga Dashdondov
 
бөөний төвийн бараа бүртгэлийн систем
бөөний төвийн бараа бүртгэлийн систембөөний төвийн бараа бүртгэлийн систем
бөөний төвийн бараа бүртгэлийн системtreeee1
 
Дэлгүүрийн кассын систем
Дэлгүүрийн кассын системДэлгүүрийн кассын систем
Дэлгүүрийн кассын системAltangerel Bilguun
 
мэдээллийн нууцлалт, хамгаалалт ба хандалт
мэдээллийн нууцлалт, хамгаалалт ба хандалтмэдээллийн нууцлалт, хамгаалалт ба хандалт
мэдээллийн нууцлалт, хамгаалалт ба хандалтTsetsenkhuu Otgonbayar
 
Java лекц8
Java лекц8Java лекц8
Java лекц8Enkhee99
 

Destaque (20)

u.cs101 "Алгоритм ба програмчлал" Лекц №5
u.cs101 "Алгоритм ба програмчлал" Лекц №5u.cs101 "Алгоритм ба програмчлал" Лекц №5
u.cs101 "Алгоритм ба програмчлал" Лекц №5
 
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4
 
u.cs101 "Алгоритм ба програмчлал" Лекц №6
u.cs101 "Алгоритм ба програмчлал" Лекц №6u.cs101 "Алгоритм ба програмчлал" Лекц №6
u.cs101 "Алгоритм ба програмчлал" Лекц №6
 
u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3
 
u.cs101 "Алгоритм ба програмчлал" Лекц №2
u.cs101 "Алгоритм ба програмчлал" Лекц №2u.cs101 "Алгоритм ба програмчлал" Лекц №2
u.cs101 "Алгоритм ба програмчлал" Лекц №2
 
u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1
 
Hmm Tutorial
Hmm TutorialHmm Tutorial
Hmm Tutorial
 
IOI 2016 "Молекул" бодлогын бодолт
IOI 2016 "Молекул" бодлогын бодолтIOI 2016 "Молекул" бодлогын бодолт
IOI 2016 "Молекул" бодлогын бодолт
 
Lecture4
Lecture4Lecture4
Lecture4
 
Java lecture4
Java lecture4Java lecture4
Java lecture4
 
лекц №6
лекц №6лекц №6
лекц №6
 
Java lecture4
Java lecture4Java lecture4
Java lecture4
 
Java lecture5
Java lecture5Java lecture5
Java lecture5
 
Цалингийн бүртгэлийн систем
Цалингийн бүртгэлийн системЦалингийн бүртгэлийн систем
Цалингийн бүртгэлийн систем
 
Java lecture3
Java lecture3Java lecture3
Java lecture3
 
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
Жава хэлний сурах бичиг Java helnii surah bichig MongolЖава хэлний сурах бичиг Java helnii surah bichig Mongol
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
 
бөөний төвийн бараа бүртгэлийн систем
бөөний төвийн бараа бүртгэлийн систембөөний төвийн бараа бүртгэлийн систем
бөөний төвийн бараа бүртгэлийн систем
 
Дэлгүүрийн кассын систем
Дэлгүүрийн кассын системДэлгүүрийн кассын систем
Дэлгүүрийн кассын систем
 
мэдээллийн нууцлалт, хамгаалалт ба хандалт
мэдээллийн нууцлалт, хамгаалалт ба хандалтмэдээллийн нууцлалт, хамгаалалт ба хандалт
мэдээллийн нууцлалт, хамгаалалт ба хандалт
 
Java лекц8
Java лекц8Java лекц8
Java лекц8
 

Semelhante a u.cs101 "Алгоритм ба програмчлал" Лекц №7

Semelhante a u.cs101 "Алгоритм ба програмчлал" Лекц №7 (10)

лекц4
лекц4лекц4
лекц4
 
Лекц №12
Лекц №12Лекц №12
Лекц №12
 
Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3
 
C lects (1)
C lects (1)C lects (1)
C lects (1)
 
Лекц №13
Лекц №13Лекц №13
Лекц №13
 
онол
онолонол
онол
 
Dynamic web 6
Dynamic web 6Dynamic web 6
Dynamic web 6
 
SW206 labo
SW206 laboSW206 labo
SW206 labo
 
Лекц №4
Лекц №4Лекц №4
Лекц №4
 
Лекц №6
Лекц №6Лекц №6
Лекц №6
 

Mais de Khuder Altangerel (18)

Марковын далд загвар
Марковын далд загварМарковын далд загвар
Марковын далд загвар
 
Lec08 readerwriter
Lec08 readerwriterLec08 readerwriter
Lec08 readerwriter
 
Lec05 cooperating (1)
Lec05 cooperating (1)Lec05 cooperating (1)
Lec05 cooperating (1)
 
Lec16 io
Lec16 ioLec16 io
Lec16 io
 
Lec07 exclusion
Lec07 exclusionLec07 exclusion
Lec07 exclusion
 
Lec15 pagereplace last
Lec15 pagereplace lastLec15 pagereplace last
Lec15 pagereplace last
 
Lec14 demandpage
Lec14 demandpageLec14 demandpage
Lec14 demandpage
 
Lec13 cachetlb
Lec13 cachetlbLec13 cachetlb
Lec13 cachetlb
 
Lec12 translation
Lec12 translationLec12 translation
Lec12 translation
 
Lec11 protection
Lec11 protectionLec11 protection
Lec11 protection
 
Lec10 scheduling
Lec10 schedulingLec10 scheduling
Lec10 scheduling
 
Lec09 deadlock
Lec09 deadlockLec09 deadlock
Lec09 deadlock
 
Lec06 synchronization
Lec06 synchronizationLec06 synchronization
Lec06 synchronization
 
Lec04 threads
Lec04 threadsLec04 threads
Lec04 threads
 
Lec03 concurrency (2)
Lec03 concurrency (2)Lec03 concurrency (2)
Lec03 concurrency (2)
 
Lec02 structures (2)
Lec02 structures (2)Lec02 structures (2)
Lec02 structures (2)
 
Lec01 intro (1) (2)
Lec01 intro (1) (2)Lec01 intro (1) (2)
Lec01 intro (1) (2)
 
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадварМХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
 

u.cs101 "Алгоритм ба програмчлал" Лекц №7

  • 1. Лекц № 7 Тэмдэгт мөр ба тэмдэгт Хэлбэржүүлсэн оролт/гаралт А. Хүдэр
  • 2.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгт боловсруулах сан  Тэмдэгт мөр хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 212/16/2015Vanderbilt university
  • 3.  Стандарт сангийн зарим функцууд ◦ Тэмдэгт мөр болон тэмдэгтийг хялбар аргаар боловсруулах ◦ Програм нь тэмдэгт, тэмдэгт мөр, текст мөр, санах ойн блокийг боловсруулж чадна  Эдгээр техникүүд нь дараах зүйл хэрэглэгдэнэ ◦ Текст редактор ◦ Хуудсын загвар гаргагч ◦ Үсэг өрөх програмууд 312/16/2015Vanderbilt university
  • 4.  Тэмдэгт ◦ Програмын үндсэн блок  Програм бүр утгатайгаар бүлэглэгдсэн тэмдэгтүүдийн дараалал юм ◦ Тэмдэгт тогтмол  Дан дусал дотор тэмдэгт хэлбэрээр дүрслэгдсэн бүхэл тоо  „z‟ нь z-ийн бүхэл утгыг илэрхийлнэ  Тэмдэгт мөр ◦ Нэг бүхэл гэж тооцогдох тэмдэгтүүдийн дараалал  Үсэг, цифр болон тусгай тэмдэгтүүдийг агуулж болно (*, /, $)  Үсэгчилсэн тэмдэгт мөр нь (тогтмол тэмдэгт мөр) давхар дусал дотор бичигдэнэ  “Hello”  Тэмдэгт мөр нь тэмдэгтэн хүснэгт юм  Тэмдэгт мөр-эхний тэмдэгтийн заагч  Тэмдэгт мөрийн утга нь эхний тэмдэгтийн хаяг юм 412/16/2015Vanderbilt university
  • 5.  Тэмдэгт мөрийг зарлах ◦ Тэмдэгтэн хүснэгт хэлбэрээр эсвэл char * төрөлтэйгээр зарлана char color[] = "blue"; char *colorPtr = "blue"; ◦ Тэмдэгтэн хүснэгт хэлбэрээр зарлагдсан тэмдэгт мөр нь „0‟ тэмдэгтээр төгсөнө  color нь 5-н элементтэй  Тэмдэгт мөрийг оруулах ◦ scanf-ийг : scanf("%s", word); гэж хэрэглэнэ  Оролтыг word[] руу хуулна  & үйлдэл хэрэггүй (учир нь тэмдэгт мөр бол заагч) ◦ Хүснэгт дотроо „0‟-д зориулсан зай үлдээх 512/16/2015Vanderbilt university
  • 6.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгт боловсруулах сан  Тэмдэгт мөр хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 612/16/2015Vanderbilt university
  • 7.  Тэмдэгт боловсруулах сан  Дараагийн хуудас дээр <ctype.h> дэх бүх функцийг жагсаасан хүснэгтийг үзүүлэв 712/16/2015Vanderbilt university
  • 9.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгт боловсруулах сан  Тэмдэгт мөр хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 912/16/2015Vanderbilt university
  • 10.  Хувиргах функцууд ◦ <stdlib.h> - д байдаг (ерөнхий хэрэгслийн сан)  Цифрээс бүтсэн тэмдэгт мөрийг бүхэл тоо болон бутархай тоо руу хөрвүүлэх 1012/16/2015Vanderbilt university
  • 11.  Анхааруулга: Хэрэв хувиргах гэж байгаа утгыг дүрслэх аргагүй бол, өөрөөр хэлбэл эхний тэмдэгт нь үсэг байвал atof функц яах нь тодорхойгүй байдаг 11 atof функц тэмдэгт мөрийг double болгон хувиргана 12/16/2015Vanderbilt university
  • 12. 12 atoi функц тэмдэгт мөрийг int болгон хувиргана 12/16/2015Vanderbilt university
  • 13. 13 atol функц тэмдэгт мөрийг long болгон хувиргана 12/16/2015Vanderbilt university
  • 14. 14 strtod функц тэмдэгт мөрийн хэсгийг double болгон хувиргана 12/16/2015Vanderbilt university
  • 15. 15 strtol функц тэмдэгт мөрийн хэсгийг long болгон хувиргана суурь Тайлбар: 1. Хоѐр дахь аргументыг NULL гэж дамжуулах нь тэмдэгт мөрийн үлдсэн хэсгийг орхихыг заана 2. Гурав дахь аргумент нь хөрвүүлэгдсэн утга 8-тын, аравтын эсвэл 16-тын тооллын системд байж болохыг заана. 12/16/2015Vanderbilt university
  • 16. 16 strtoul функц тэмдэгт мөрийн хэсгийг unsigned long болгон хувиргана 12/16/2015Vanderbilt university
  • 17.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгт боловсруулах сан  Тэмдэгт мөр хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 1712/16/2015Vanderbilt university
  • 18.  <stdio.h> дэх функцууд  Тэмдэгт болон тэмдэгт мөр төрлийн өгөгдлийн боловсруулахад зориулагдсан 1812/16/2015Vanderbilt university
  • 19.  Функц өөрийн бие дотор өөрийгөө дуудах  Үндсэн тохиолдлыг хүртэл өөрийгөө дуудсаар байна  Диаграм ашиглан үйлдлийг нь шинжилнэ 1912/16/2015Vanderbilt university
  • 20. 20 gets нь хэрэглэгчээс нэг мөр текст хүлээн авна 12/16/2015Vanderbilt university
  • 21. 21 putchar нь дэлгэцэн дээр нэг тэмдэгт хэвлэнэ 12/16/2015Vanderbilt university
  • 22.  Алхам 1: reverse(“abc”) ◦ Алхам 2: reverse(&sPtr[1])  reverse(“bc”) (Эхэлж хийх) ◦ putchar(sPtr[0])  putchar(„a‟) (Дараа нь хийх)  Алхам 2: reverse(“bc”) ◦ Алхам 3: reverse(&sPtr[1])  reverse(“c”) (Эхэлж хийх) ◦ putchar(sPtr[0])  putchar(„b‟) (Дараа нь хийх)  Алхам 3: reverse(“c”) ◦ Алхам 4: reverse(&sPtr[1])  reverse(“0”) (Эхэлж хийх) ◦ putchar(sPtr[0])  putchar(„c‟) (Дараа нь хийх)  Алхам 4: reverse(“0”) ◦ Үндсэн тохиолдол  return  Алхам 4 Алхам 3  Алхам 2  Алхам 1 “cba” 2212/16/2015Vanderbilt university
  • 23. 23 puts нь нэг мөр текстийг дэлгэц дээр хэвлэнэ getchar хэрэглэгчээс нэг тэмдэгтийг уншина 12/16/2015Vanderbilt university
  • 25. 25 sprintf нь нэг мөр текстийг printf дэлгэцэн дээр текст хэвлэдэг шиг хүснэгт рүү бичнэ 12/16/2015Vanderbilt university
  • 26. 26 sscanf нь нэг мөр текстийг scanf хэрэглэгчээс текст уншдаг шиг хүснэгтээс уншина 12/16/2015Vanderbilt university
  • 27.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгт боловсруулах сан  Тэмдэгт мөр хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 2712/16/2015Vanderbilt university
  • 28.  Тэмдэгт мөр боловсруулах санд дараах функцууд байдаг ◦ Тэмдэгт мөр төрлийн өгөгдлийг боловсруулах ◦ Тэмдэгт мөр хайх ◦ Тэмдэгт мөрийг токен болгон задлах ◦ Тэмдэгт мөрийн уртыг олох 2812/16/2015Vanderbilt university
  • 29. 29 strcpy нь x тэмдэгт мөрийг y тэмдэгтэн хүснэгт рүү хуулна strncpy x тэмдэгт мөрийн 14 тэмдэгтийг z тэмдэгтэн хүснэгт рүү хуулж байна strncpy нь автоматаар null тэмдэгтийг нэмэхгүй байгааг анхаараарай 12/16/2015Vanderbilt university
  • 30. 30 strcat нь s2 тэмдэгт мөрийг s1 тэмдэгт мөрийн төгсгөлд нэмнэ strncat s2 тэмдэгт мөрийн эхний 6 тэмдэгтийг s3 тэмдэгт мөрийн төгсгөлд нэмж байна. Төгсгөлийн null тэмдэгтийг автоматаар үр дүнгийн төгсгөлд нэмнэ. 12/16/2015Vanderbilt university
  • 32.  Тэмдэгт мөрүүдийг харьцуулах ◦ Компьютер тэмдэгт мөр дэх тэмдэгтүүдийн ASCII кодыг харьцуулна ◦ int strcmp( const char *s1, const char *s2 );  s1 тэмдэгт мөрийг s2-той харьцуулна  Хэрэв s1<s2 бол сөрөг утга, s1==s2 бол тэгийг, s1>s2 бол эерэг утга буцаана ◦ int strncmp( const char *s1, const char *s2, size_t n );  s1-ийн эхний n тэмдэгтийг s2-ынхтой харьцуулна  Дээрхтэй ижил утга буцаана 3212/16/2015Vanderbilt university
  • 33. 33 strcmp нь s1 тэмдэгт мөрийг s2 тэмдэгт мөртэй харьцуулна 12/16/2015Vanderbilt university
  • 34. 34 strncmp s1 тэмдэгт мөрийн эхний 6 тэмдэгтийг s3 тэмдэгт мөрийн эхний 6 тэмдэгттэй харьцуулж байна 12/16/2015Vanderbilt university
  • 39. 39 strstr string1 тэмдэгт мөр дотор string2 тэмдэгт мөр олдох string1 тэмдэгт мөрийн эхний байрлалаас хойш байрлах хэсгийг буцааж байна 12/16/2015Vanderbilt university
  • 40. 40 strtok нь string-ийг хоосон зай ашиглан “токенуудад” задална strtok – ийг NULL аргументтайгаар дахин дуудсанаар strtok-ийг өмнө нь дуудахад хадгалагдсан байрлалаас эхлэн цааш токенуудад үргэлжлүүлэн задлана 12/16/2015Vanderbilt university
  • 43. 43 strlen нь string1-ийн уртыг буцаана 12/16/2015Vanderbilt university
  • 44.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгт боловсруулах сан  Тэмдэгт мөр хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 4412/16/2015Vanderbilt university
  • 45.  Урсгал ◦ Нэг мөр болон зохион байгуулагдсан тэмдэгтүүдийн дараалал  Мөр бүр тэг эсвэл түүнээс олон тэмдэгтүүдээс тогтох ба шинэ мөр гэсэн тэмдэгтээр төгсөнө  ANSI C дор хаяж 254 тэмдэгттэй урсгал дэмждэг ◦ Бүх оролт болон гаралтыг гүйцэтгэнэ ◦ Чиглэлийг нь өөрчилж болно  Стандарт оролт – гар  Стандарт гаралт – дэлгэц  Стандарт алдаа - дэлгэц 4512/16/2015Vanderbilt university
  • 46.  printf ◦ Гаралтын хэлбэрийг зааж өгөх  Хувиргалтын тодорхойлогчид: флаг, талбарын өргөн, нарийвчлал гэх мэт ◦ Тоймлолт, багананд хэвлэх, зүүн баруун зэрэгцүүлэлт, тэмдэгт тогтмол оруулах, экспоненциал хэлбэр хэрэглэх, 16-тын формат, тогтмол өргөн ба нарийвчлал  Хэлбэр ◦ printf( хэлбэржүүлэлтийг удирдах тэмдэгт мөр, бусад аргументууд); ◦ Хэлбэржүүлэлтийг удирдах тэмдэгт мөр: гаралтын хэлбэрийг зааж өгнө ◦ Бусад аргументууд: хэлбэржүүлэлтийг удирдах тэмдэгт мөрөнд байгаа хувиргалтын тодорхойлогчид харгалзана  Тодорхойлогч бүр хувийн тэмдэгээр (%) эхэлж хувиргалтын заагчаар төгсөнө. 4612/16/2015Vanderbilt university
  • 47.  Бүхэл тоо ◦ Бүхэл хэсэг (бутархайн таслалгүй): 25, 0, -9 ◦ Эерэг, сөрөг эсвэл тэг ◦ Үндсэн тохиргооны үед хасах тэмдгийг л хэвлэдэг (үүнийг өөрчлөхийг удахгүй үзнэ) 4712/16/2015Vanderbilt university
  • 49. 49 d ба i нь тэмдэгтэй бүхэл тоог заана s нь short –ыг заана l нь long–ыг заана o нь 8–тын тооллын системд байгааг заана u нь тэмдэггүй бүхэл тоог заана 12/16/2015Vanderbilt university
  • 50. Тайлбар: -455 утгыг %u гэж уншихад (15-р мөр) тэмдэггүй тоо руу хувиргагдан 4294966841 гэсэн утгатай болно. Иймд тэмдэгтэй бүхэл тоог тэмдэггүй бүхэл тооны хувиргалтыг тодорхойлогчоор унших нь алдаанд хүргэнэ. 50 x ба X нь 16-тын бүхэл тоог заана 12/16/2015Vanderbilt university
  • 51.  Хөвөх таслалтай тоо ◦ Аравтын бутархайн таслалтай байна (33.5) ◦ Экспоненциал хэлбэр (ШУ-ны хэлбэрийн компьютер дэх хувилбар)  150.3 нь ШУ-ны хэлбэрт 1.503 x 102 болно  150.3 нь экспоненциал хэлбэрт 1.503E+02 болно (E нь экспенциал гэсэн үг)  e эсвэл E-г хэрэглэнэ ◦ f – хөвөх таслалтай тоог таслалын урд ядаж нэг аравтын оронтой байхаар хэвлэх ◦ g (эсвэл G) нь f буюу e хэлбэрээр, сүүлд байгаа тэгүүдийг хасч хэвлэнэ (1.2300 нь 1.23 болно)  Хэрэв зэрэг нь -4-өөс бага, эсвэл нарийвчлалаас их буюу тэнцүү үед экспоненциал хэлбэрийг хэрэглэнэ (нарийвчлалын үндсэн утга нь таслалаас хойш 6 цифр байдаг) 5112/16/2015Vanderbilt university
  • 53. 53 e ба E нь зэрэгтэй бичиглэлийг заана f нь бэхлэгдсэн цэгтэй бичиглэлийг заана g ба G нь тооноос хамааран зэрэгтэй эсвэл бэхлэгдсэн цэгтэй бичиглэлийг хэрэглэхийг заана 12/16/2015Vanderbilt university
  • 54.  c ◦ char төрлийн аргументыг хэвлэнэ ◦ Тэмдэгт мөрийн эхний тэмдэгтийг хэвлэх зорилгоор хэрэглэгдэхгүй  s ◦ Аргументаараа char төрлийн заагчийг шаардана ◦ NULL („0‟) тэмдэгт хүртэл бүх тэмдэгтийг хэвлэнэ ◦ char төрлийн аргументыг хэвлэж чадахгүй  Тайлбар ◦ Дан дусал нь тэмдэгт төрлийн тогтмолд хэрэглэгдэнэ („z‟) ◦ Давхар дусал нь “z” (энэ нь үнэндээ „z‟ ба „0‟ гэсэн хоѐр тэмдэгтээс тогтоно) гэх мэт тэмдэгт мөрөнд зориулагдсан 5412/16/2015Vanderbilt university
  • 55. 55 c нь тэмдэгт хэвлэгдэхийг заана s нь тэмдэгт мөр хэвлэгдэхийг заана 12/16/2015Vanderbilt university
  • 56.  p ◦ Заагчийн утгыг (өөрөөр хэлбэл хаягийг) тодорхой хэлбэрээр үзүүлнэ (ихэнх системүүдэд 10-тын тооллын системээс 16-тын тооллын системийг илүү хэрэглэнэ)  n ◦ Тухайн printf үйлдлийн хэвлээд байгаа тэмдэгтийн тоог хадгална ◦ Аргументаараа бүхэл тоон төрөл руу заах хувьсагчийг шаардана ◦ %n тодорхойлогчоор юуг ч хэвлэхгүй ◦ printf – ийг дуудах бүрд дараах утгыг буцаана  Хэвлэж гаргасан тэмдэгтийн тоо  Хэрэв алдаа гарсан бол сөрөг тоо  % ◦ Хувийн тэмдэгтийг хэвлэх ◦ %% 5612/16/2015Vanderbilt university
  • 57. 57 p нь санах ойн хаяг хэвлэгдэхийг заана n нь хэвлэгдсэн тэмдэгтийн тоог хадгална % нь хувийн (%) тэмдэгтийг хэвлэнэ 12/16/2015Vanderbilt university
  • 59.  Талбарын өргөн ◦ Өгөгдлийг хэвлэх талбарын өргөн ◦ Хэрэв өргөн нь өгөгдлөөс их бол үндсэн тохиргоогоор өгөгдөл баруун талд зэрэгцүүлэгдэнэ  Хэрэв талбар нь жижиг бол өгөгдөл багтахаар болгож томруулна  Хасах тэмдэг нь талбарт нэг тэмдэгтийн зай эзэлнэ ◦ Бүхэл тооны өргөнийг % тэмдэгт болон хувиргалтын тодорхойлогчийн хооронд бичнэ ◦ %4d – 4 тэмдэгтийн өргөнтэй талбар 5912/16/2015Vanderbilt university
  • 60. 60 Си хэл хасах тэмдгийг мөн тэмдэгтэд тооцдогийг анхаар 4 өргөнтэй талбар зааж өгснөөр Си өгөгдсөн тоог 4 тэмдэгтийн зайд багтаахыг хичээх болно 12/16/2015Vanderbilt university
  • 62.  Нарийвчлал ◦ Өгөгдлийн төрлөөс хамааран утга нь өөрчлөгдөнө ◦ Бүхэл тоо (үндсэн утга нь 1)  Хэвлэгдэх цифрүүдийн хамгийн бага тоо  Хэрэв өгөгдөл нь бага бол өмнө нь тэгүүдийг нэмнэ ◦ Хөвөх таслалтай тоо  Таслалын ард хэвлэгдэх оронгийн тоо (e болон f)  g – гийн хувьд таслалаас хойш хэвлэгдэх оронгийн тооны хамгийн их утга  Хөвөх таслалтай тоог анхны утгынх нь нарийвчлалаас бага нарийвчлалтайгаар хэвлэх үед утгыг нь тоймлоно ◦ Тэмдэгт мөр  Тэмдэгт мөрөөс хэвлэх тэмдэгтүүдийн тооны хамгийн их утга ◦ Хэлбэр  %-ийн дараа цэг тавьж, дараа нь нарийвчлалын утгаа бичнэ %.3f 6212/16/2015Vanderbilt university
  • 63.  Талбарын өргөн ба нарийвчлал ◦ Хоѐуланг нь зааж өгч болно  %min_width.precision %5.3f ◦ Талбарын өргөн сөрөг утгатай бол зүүн талд нь зэрэгцүүлнэ ◦ Талбарын өргөн эерэг утгатай бол баруун талд нь зэрэгцүүлнэ ◦ Нарийвчлал нь эерэг тоо байх ѐстой ◦ Талбарын өргөн болон нарийвчлалыг заахад илэрхийлэл ашиглаж болно  Талбарын өргөн буюу нарийвчлал заах байрлалд од (*) тавих  Аргументын жагсаалт дахь int утгыг авч хэрэглэнэ  Жишээ: printf( "%*.*f", 7, 2, 98.736 ); 6312/16/2015Vanderbilt university
  • 64. 64 Бүхэл тооны хувьд нарийвчлал нь хамгийн багадаа хэдэн тэмдэгт хэвлэхийг заана g тодорхойлогчийн хувьд нарийвчлал нь таслалаас хойш хамгийн ихдээ хэдэн цифр хэвлэхийг удирдана f болон e тодорхойлогчийн хувьд нарийвчлал нь таслалаас хойш хэдэн цифр хэвлэхийг удирдана 12/16/2015Vanderbilt university
  • 65. 65 Тэмдэгт мөрийн хувьд нарийвчлал нь хамгийн ихдээ хэдэн тэмдэгт хэвлэхийг заана 12/16/2015Vanderbilt university
  • 66.  Флагууд ◦ Хэлбэржүүлэлтэнд туслах үүрэгтэй ◦ Флагийг хувийн тэмдгийн баруун талд тавина ◦ Хэд хэдэн флагийг хослуулан ашиглаж болно 6612/16/2015Vanderbilt university
  • 67. 67 - флаг нь талбар дахь тэмдэгтүүдийг зүүн талд нь зэрэгцүүлнэ 12/16/2015Vanderbilt university
  • 68. 68 + флаг нь эерэг тоог заавал + тэмдэгтэй хэвлүүлнэ 12/16/2015Vanderbilt university
  • 69.  Тогтмол тэмдэгт мөрийг хэвлэх ◦ Ихэнх тэмдэгтүүдийг хэвлэж болно ◦ “ гэх мэт тэмдэгтүүд дээр асуудал гарна ◦ Тусгай тэмдэгтүүдийг ашиглан дүрслэх ѐстой  Ташуу зураасын ард тусгай тэмдэгтээ бичнэ 6912/16/2015Vanderbilt university
  • 71.  scanf ◦ Оролтыг гаралттай төстэйгээр хэлбэржүүлж болно ◦ scanf-ийн хувиргалтын тодорхойлогчид нь printf-ийнхээс бага зэрэг ялгаатай байна 7112/16/2015Vanderbilt university
  • 74. 74 d нь аравтын бүхэл тоо орж ирэхийг заана i нь бүхэл тоо орж ирэхийг заана o нь наймтын бүхэл тоо орж ирэхийг заана u нь тэмдэггүй аравтын бүхэл тоо орж ирэхийг заана x нь арван зургаатын бүхэл тоо орж ирэхийг заана 12/16/2015Vanderbilt university
  • 75. 75 e, f, g нь бутархай тоо орж ирэхийг заана l нь long эсвэл long double тоо орж ирэхийг заана 12/16/2015Vanderbilt university
  • 76. 76 c нь тэмдэгт орж ирэхийг заана s нь тэмдэгт мөр орж ирэхийг заана 12/16/2015Vanderbilt university
  • 77. 77 2 урттай талбар нь Си хэлэнд оролтын эхний хоѐр тэмдэгтийг уншихыг заана 12/16/2015Vanderbilt university
  • 78. 78 scanf * ашигласан хоѐр оролтыг орхино 12/16/2015Vanderbilt university
  • 79.  Тэмдэгт мөр ба тэмдэгт  Тэмдэгтийг боловсруулах сан  Тэмдэгт мөрийг хувиргах функцууд  Стандарт оролт/гаралтын сангийн функцууд  Тэмдэгт мөр боловсруулах сангийн тэмдэгт мөртэй ажиллах функцууд  Хэлбэржүүлсэн оролт/гаралт 7912/16/2015Vanderbilt university