SlideShare a Scribd company logo
Лекц №12
Сэдэв: Тэмдэгт мөр
Тэмдэгт мөр
Тэмдэгт мөр
Тэмдэгт
мөрийн
эхлэл
Тэмдэгт
мөрийг
зааглагч
“ ”
Хоосон
тэмдэгт мөр
“H” тэмдэгт
мөр
Тэмдэгт
мөрийн
төгсгөл
Тэмдэгт мөр
төрлийн массивын
төгсгөл биш
Массивын хэсэг
боловч мэмдэгт мөр
төрлийн хэсэг биш
Тэмдэгт ‘H’
Тэмдэгт мөр
Тэмдэгтийг дан хашилт ‘ ’ дотор, тэмдэгт мөрийг давхар хашилт “ “
дотор бичнэ.
Тэмдэгтийн зарлах char s[5];
Тэмдэгтэд анхны утга оноох
char c[] = "abcd";
char c[50] = "abcd";
char c[] = {'a', 'b', 'c', 'd', '0'};
char c[5] = {'a', 'b', 'c', 'd', '0'};
Тэмдэгт Тэмдэгт мөр
Тэмдэгт мөр
Жишээ №1: Тэмдэгтийг scanf(); функцээр гараас оруулах
#include <stdio.h>
int main()
{
char name[20];
printf("Enter name: ");
scanf("%s", name);
printf("Your name is %s.", name);
return 0;
}
Үр дүн:
Enter name: Dennis Ritchie
Your name is Dennis.
D e n n i s -
[0] [1] [2] [3] [4] [5] [6]name
Утга
Дээрх жишээнд Dennis Ritchie гэсэн
тэмдэгт мөрний зөвхөн "Dennis"
хадгалагдаж байна. "Dennis" дараа
хоосон зай авсанаас хойшх тэмдэг
мөр хадгалагдахгүй.
Тэмдэгт мөр
Жишээ №2: Тэмдэгтийг fgets() функцээр гараас оруулж, puts()
хэвлэх
#include <stdio.h>
int main()
{
char name[30];
printf("Enter name: ");
fgets(name, sizeof(name), stdin); // read string
printf("Name: "); puts(name); // display string
return 0;
}
Үр дүн:
Enter name: Tom Hanks
Name: Tom Hanks
T o m H a n k s
[0] [1] [2] [3] [4] [5] [6] [7] [8]name
Утга
Хэрэглэгчийн оруулсан мөрийг уншихын тулд fgets() функцийг ашигласан
болно.
Тэмдэгт мөр
fgets() функцын бичигдэх хэлбэр
fgets(нэр, sizeof(нэр), stdin); // read string
sizeof(name) дээд тал нь 30 тэмдэгт авах боломжтой.
Мөрийг хэвлэхийн тулд бид puts(name); -ийг ашигласан болно.
Тэмдэглэл: get() функц нь хэрэглэгчийн оролтыг авах явдал байж болно.
Гэсэн хэдий ч С стандартаас хасагдсан болно.
Get() нь дурын урт тэмдэгт оруулах боломжийг олгодогтой холбоотой юм.
Тиймээс буфер хальж магадгүй юм.
Тэмдэгт мөр
Жишээлбэл: Тэмдэгтийн мөрийг хэвлэх
Тэмдэгт мөр
Тэмдэгт мөр
Тэмдэгт мөрийг ашиглахаас өмнө тэмдэгт мөрт зориулсан санах ойг
хуваарилах ёстой.
Тэмдэгт мөртэй
ажилладаг
функцууд
Тэмдэгт мөр
Мөртэй ажилладаг функцууд
C <string.h> толгой файл нь тэмдэгт мөрүүдтэй ажиллах дараах
функцуудтай.
Мөрийг хуулбарлах strcpy();
Бичигдэх хэлбэр
char* strcpy(char* s1, const char* s2);
Үйлдэл: s2 мөрийг s1 мөр рүү хуулна.
Мөрүүдийг нэгтгэх strcat();
Бичигдэх хэлбэр
char* strcat(char* s1, const char* s2);
Үйлдэл: S2 мөрийг s1 мөрний төгсгөлд холбоно.
Тэмдэгт мөр
Мөрийн уртыг олох strlen();
Бичигдэх хэлбэр
char* strlen(char* s1);
Үйлдэл: S1 мөрийн уртыг буцаана.
Мөрийг харьцуулах strcmp();
Бичигдэх хэлбэр
char* strcmp(char* s1, const char* s2);
Үйлдэл: s1 ба s2 ижил байвал 0 буцаана; s1<s2 бол 0-ээс бага; s1> s2 бол
0-ээс их.
Жич: Хэрэглэгч s2 тэмдэгт мөрүүдийг гараас оруулж дуусаад 0 тэмдэгтийг
оруулснаар тэмдэгт мөр дуусна.
Тэмдэгт мөртэй
ажиллах
/функц ашиглаагүй
жишээ/
Тэмдэгт мөр
Жишээ №3: Мөр дэх тэмдэгтүүдийн давтамжийг олох
1. #include <stdio.h>
2. int main() {
3. char str[1000], ch; int count = 0;
4. printf("Enter a string: ");
5. fgets(str, sizeof(str), stdin);
6. printf("Enter a character to find its frequency: ");
7. scanf("%c", &ch);
8. for (int i = 0; str[i] != '0'; ++i)
9. {
10. if (ch == str[i]) ++count;
11.}
12.printf("Frequency of %c = %d", ch, count);
13.return 0;
14.}
Үр дүн:
Enter a string: This website is awesome.
Enter a character to find its frequency: e
Frequency of e = 4
Тэмдэгт мөр
Жишээ №4: Мөр дэх тэмдэгтүүдээс эгшиг, гийгүүлэгч, тоог олох
1. include <stdio.h>
2. int main() {
3. char line[150]; int vowels, consonant, digit, space;
4. vowels = consonant = digit = space = 0;
5. printf("Enter a line of string: ");
6. fgets(line, sizeof(line), stdin);
7. for (int i = 0; line[i] != '0'; ++i) {
8. if (line[i] == 'a' || line[i] == 'e' || line[i] == 'i' || line[i] == 'o' || line[i] == 'u' ||
9. line[i] == 'A' || line[i] == 'E' || line[i] == 'I' || line[i] == 'O' || line[i] == 'U')
10. { ++vowels; }
11. else if ((line[i] >= 'a' && line[i] <= 'z') || (line[i] >= 'A' && line[i] <= 'Z'))
12. { ++consonant; }
13. else if (line[i] >= '0' && line[i] <= '9') { ++digit; } else if (line[i] == ' ')
14. { ++space; } }
15. printf("Vowels: %d", vowels);
16. printf("nConsonants: %d", consonant);
17. printf("nDigits: %d", digit);
18. printf("nWhite spaces: %d", space);
19. return 0; }
Үр дүн:
Enter a line of string: adfslkj34 34lkj343 34lk
Vowels: 1
Consonants: 11
Digits: 9
White spaces: 2
Тэмдэгт мөр
Жишээ №5: Бичсэн өгүүлбэрийг дэд функц буюу рекурс ашиглан
урвуу хэлбэр рүү шилжүүлэх
1. #include <stdio.h>
2. void reverseSentence();
3. int main() {
4. printf("Enter a sentence: ");
5. reverseSentence(); return 0;
6. }
7. void reverseSentence()
8. {
9. char c; scanf("%c", &c);
10.if (c != 'n') { reverseSentence(); printf("%c", c); }
11.}
Үр дүн:
Enter a sentence: margorp emosewa
awesome program
Тэмдэгт мөр
Жишээ №6: Мөрийн уртыг олох
1. #include <stdio.h>
2. int main()
3. {
4. char s[] = "Programming is fun";
5. int i; for (i = 0; s[i] != '0'; ++i);
6. printf("Length of the string: %d", i);
7. return 0;
8. }
Үр дүн:
Length of the string: 18
Тэмдэгт мөр
Жишээ №7: Хоёр мөрийг нэгтгэх
1. #include <stdio.h>
2. int main() {
3. char s1[100] = "programming ", s2[] = "is awesome"; int length, j;
4. // store length of s1 in the length variable
5. length = 0;
6. while (s1[length] != '0') { ++length; }
7. // concatenate s2 to s1
8. for (j = 0; s2[j] != '0'; ++j, ++length)
9. { s1[length] = s2[j]; }
10. // terminating the s1 string
11. s1[length] = '0';
12. printf("After concatenation: ");
13. puts(s1);
14. return 0; }
Үр дүн:
After concatenation:
programming is awesome
Тэмдэгт мөр
Жишээ №8: Мөрийг хуулбарлах
1. #include <stdio.h>
2. int main()
3. {
4. char s1[100], s2[100], i;
5. printf("Enter string s1: ");
6. fgets(s1, sizeof(s1), stdin);
7. for (i = 0; s1[i] != '0'; ++i)
8. { s2[i] = s1[i]; }
9. s2[i] = '0';
10. printf("String s2: %s", s2);
11. return 0;
12. }
Үр дүн:
Enter string s1: Hey fellow programmer.
String s2: Hey fellow programmer.
1. #include <stdio.h>
2. int main() {
3. char line[150];
4. printf("Enter a string: ");
5. fgets(line, sizeof(line), stdin); // take input
6. for (int i = 0, j; line[i] != '0'; ++i) {
7. // enter the loop if the character is not an alphabet
8. // and not the null character
9. while (!(line[i] >='a' && line[i] <='z') && !(line[i] >='A' && line[i] <='Z') && !(line[i] =='0'))
10. { for (j = i; line[j] != '0'; ++j) {
11. // if jth element of line is not an alphabet,
12. // assign the value of (j+1)th element to the jth element
13. line[j] = line[j + 1]; } line[j] = '0'; } }
14. printf("Output String: ");
15. puts(line);
16. return 0; }
Тэмдэгт мөр
Жишээ №9: Цагаан толгойноос бусад тэмдэгт тэмдэгтүүдийг устгах
Үр дүн:
Enter a string: p2'r-o@gram84iz./
Output String: programiz
Тэмдэгт мөртэй
ажиллах
/функц ашигласан
жишээ/
Тэмдэгт мөр
Жишээ №10: Мөрийн уртыг strlen() функц ашиглах олох
1. #include <stdio.h>
2. #include <string.h>
3. int main() {
4. char a[20]="Program";
5. char b[20]={'P','r','o','g','r','a','m','0'};
6. // using the %zu format specifier to print size_t
7. printf("Length of string a = %zu n",strlen(a));
8. printf("Length of string b = %zu n",strlen(b));
9. return 0;
10.}
Үр дүн:
Length of string a = 7
Length of string b = 7
Тэмдэгт мөр
Жишээ №11: Strcat() ашиглан хоёр мөрийг нэгтгэх
1. #include <stdio.h>
2. #include <string.h>
3. int main() {
4. char str1[100] = “Programming", str2[] = “C 2020";
5. // concatenates str1 and str2
6. // the resultant string is stored in str1.
7. strcat(str1, str2);
8. puts(str1);
9. puts(str2);
10.return 0; }
Үр дүн:
Programming C 2020
Programming
Тэмдэгт мөр
Жишээ №12: Strcpy() ашиглан мөрийг хуулбарлах
1. #include <stdio.h>
2. #include <string.h>
3. int main()
4. {
5. char str1[] = "abcd", str2[] = "abCd", str3[] = "abcd";
6. int result;
7. // comparing strings str1 and str2
8. result = strcmp(str1, str2);
9. printf("strcmp(str1, str2) = %dn", result);
10.// comparing strings str1 and str3
11.result = strcmp(str1, str3);
12.printf("strcmp(str1, str3) = %dn", result);
13.return 0;
14. }
Үр дүн:
C programming
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "abcd", str2[] = "abCd", str3[] = "abcd";
int result;
// comparing strings str1 and str2
result = strcmp(str1, str2);
printf("strcmp(str1, str2) = %dn", result);
// comparing strings str1 and str3
result = strcmp(str1, str3);
printf("strcmp(str1, str3) = %dn", result);
return 0;
}
Тэмдэгт мөр
Жишээ №13: strcmp() функц ашиглан мөрүүдийг харьцуулах
Үр дүн:
strcmp(str1, str2) = 32
strcmp(str1, str3) = 0
Тайлбар:
str1 ба str2 мөрүүдийн хоорондох
харьцуулахад гурав дахь тэмдэгт ‘с' -ийн
ASCII утга 99, 'C' -ийн ASCII утга 67
байна. Тиймээс буцах утга 32 болно.
Str1 ба str3 мөрүүдийг харьцуулж үзэхэд
хоёр мөр адилхан тул үр дүн нь 0 болно.

More Related Content

What's hot

C cons
C consC cons
C cons
Onon Tuul
 
Лекц №1
Лекц №1Лекц №1
Datastructure algoritm
Datastructure algoritmDatastructure algoritm
Datastructure algoritm
Nergui Batjargal
 
тооллын систем
тооллын системтооллын систем
тооллын системMunkhuu Buyanaa
 
Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14
International Ulaanbaatar University
 
C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1
Urantuya Purevtseren
 
U.cs101 алгоритм программчлал-7
U.cs101   алгоритм программчлал-7U.cs101   алгоритм программчлал-7
U.cs101 алгоритм программчлал-7
Badral Khurelbaatar
 
U.cs101 алгоритм программчлал-13
U.cs101   алгоритм программчлал-13U.cs101   алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Badral Khurelbaatar
 
мэдээллийн технологи 1 хичээлийн хөтөлбөр
мэдээллийн технологи 1 хичээлийн хөтөлбөрмэдээллийн технологи 1 хичээлийн хөтөлбөр
мэдээллийн технологи 1 хичээлийн хөтөлбөр
Батбагана Баасанжав
 
U.cs101 алгоритм программчлал-3
U.cs101   алгоритм программчлал-3U.cs101   алгоритм программчлал-3
U.cs101 алгоритм программчлал-3
Badral Khurelbaatar
 
Sw203 Lecture6 Inheritance
Sw203 Lecture6 InheritanceSw203 Lecture6 Inheritance
Sw203 Lecture6 Inheritance
Jargalsaikhan Alyeksandr
 
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогуудДавталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогуудБаярсайхан Л
 
си хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р ангиси хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р ангиenhsaran_tsahim
 

What's hot (20)

C cons
C consC cons
C cons
 
Лекц №10
Лекц №10Лекц №10
Лекц №10
 
Лекц №1
Лекц №1Лекц №1
Лекц №1
 
Datastructure algoritm
Datastructure algoritmDatastructure algoritm
Datastructure algoritm
 
тооллын систем
тооллын системтооллын систем
тооллын систем
 
Massiv presentation
Massiv presentationMassiv presentation
Massiv presentation
 
Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14
 
C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1
 
U.cs101 алгоритм программчлал-7
U.cs101   алгоритм программчлал-7U.cs101   алгоритм программчлал-7
U.cs101 алгоритм программчлал-7
 
C++
C++C++
C++
 
2
22
2
 
U.cs101 алгоритм программчлал-13
U.cs101   алгоритм программчлал-13U.cs101   алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
 
hicheel2
hicheel2hicheel2
hicheel2
 
мэдээллийн технологи 1 хичээлийн хөтөлбөр
мэдээллийн технологи 1 хичээлийн хөтөлбөрмэдээллийн технологи 1 хичээлийн хөтөлбөр
мэдээллийн технологи 1 хичээлийн хөтөлбөр
 
Лекц 9(Заагч)
Лекц 9(Заагч)Лекц 9(Заагч)
Лекц 9(Заагч)
 
U.cs101 алгоритм программчлал-3
U.cs101   алгоритм программчлал-3U.cs101   алгоритм программчлал-3
U.cs101 алгоритм программчлал-3
 
с++ хэл
с++ хэлс++ хэл
с++ хэл
 
Sw203 Lecture6 Inheritance
Sw203 Lecture6 InheritanceSw203 Lecture6 Inheritance
Sw203 Lecture6 Inheritance
 
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогуудДавталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
 
си хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р ангиси хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р анги
 

Similar to Лекц №12

Hylbar shugaman programmuud хичээл 4
Hylbar shugaman programmuud хичээл 4Hylbar shugaman programmuud хичээл 4
Hylbar shugaman programmuud хичээл 4
Urantuya Purevtseren
 
баяраа сургалт
баяраа сургалтбаяраа сургалт
баяраа сургалтNatsag Oyungerel
 
U.cs101 лаборатори 8
U.cs101 лаборатори 8U.cs101 лаборатори 8
U.cs101 лаборатори 8
Ganbaatar ch
 
Лаборатор-3
Лаборатор-3Лаборатор-3
Лаборатор-3bsuren_bn
 
Day 3 php working with string, number
Day 3   php working with string, numberDay 3   php working with string, number
Day 3 php working with string, numberETC
 
Excel 2007
Excel 2007Excel 2007
Excel 2007joybayar
 
Microsoft excel
Microsoft excelMicrosoft excel
Microsoft excelbazargur
 
Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3
Urantuya Purevtseren
 
үндсэн функцууд
үндсэн функцуудүндсэн функцууд
үндсэн функцуудOnon Tuul
 

Similar to Лекц №12 (16)

Mzui
MzuiMzui
Mzui
 
C lects (1)
C lects (1)C lects (1)
C lects (1)
 
Лекц №8
Лекц №8Лекц №8
Лекц №8
 
Hylbar shugaman programmuud хичээл 4
Hylbar shugaman programmuud хичээл 4Hylbar shugaman programmuud хичээл 4
Hylbar shugaman programmuud хичээл 4
 
баяраа сургалт
баяраа сургалтбаяраа сургалт
баяраа сургалт
 
U.cs101 лаборатори 8
U.cs101 лаборатори 8U.cs101 лаборатори 8
U.cs101 лаборатори 8
 
Лаборатор-3
Лаборатор-3Лаборатор-3
Лаборатор-3
 
си хэл 10
си хэл 10си хэл 10
си хэл 10
 
Day 3 php working with string, number
Day 3   php working with string, numberDay 3   php working with string, number
Day 3 php working with string, number
 
Excel 2007
Excel 2007Excel 2007
Excel 2007
 
Програмчлалын хэл
Програмчлалын хэлПрограмчлалын хэл
Програмчлалын хэл
 
Microsoft excel
Microsoft excelMicrosoft excel
Microsoft excel
 
лекц4
лекц4лекц4
лекц4
 
Presentation1
Presentation1Presentation1
Presentation1
 
Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3
 
үндсэн функцууд
үндсэн функцуудүндсэн функцууд
үндсэн функцууд
 

More from Amarsaikhan Tuvshinbayar

Лекц №4
Лекц №4Лекц №4
Лекц №3
Лекц №3Лекц №3
Лекц №2
Лекц №2Лекц №2

More from Amarsaikhan Tuvshinbayar (13)

U.it101 lec2
U.it101 lec2U.it101 lec2
U.it101 lec2
 
U.it101 lec1
U.it101 lec1U.it101 lec1
U.it101 lec1
 
Лекц №16
Лекц №16Лекц №16
Лекц №16
 
Лекц №15
Лекц №15Лекц №15
Лекц №15
 
Лекц №14
Лекц №14Лекц №14
Лекц №14
 
Лекц №9
Лекц №9Лекц №9
Лекц №9
 
Лекц №7
Лекц №7Лекц №7
Лекц №7
 
Лекц №5
Лекц №5Лекц №5
Лекц №5
 
Лекц №4
Лекц №4Лекц №4
Лекц №4
 
Лекц №3
Лекц №3Лекц №3
Лекц №3
 
Лекц №2
Лекц №2Лекц №2
Лекц №2
 
U.IT101 homework 1
U.IT101 homework 1U.IT101 homework 1
U.IT101 homework 1
 
U.CS101
U.CS101U.CS101
U.CS101
 

Лекц №12

  • 3. Тэмдэгт мөр Тэмдэгт мөрийн эхлэл Тэмдэгт мөрийг зааглагч “ ” Хоосон тэмдэгт мөр “H” тэмдэгт мөр Тэмдэгт мөрийн төгсгөл Тэмдэгт мөр төрлийн массивын төгсгөл биш Массивын хэсэг боловч мэмдэгт мөр төрлийн хэсэг биш Тэмдэгт ‘H’
  • 4. Тэмдэгт мөр Тэмдэгтийг дан хашилт ‘ ’ дотор, тэмдэгт мөрийг давхар хашилт “ “ дотор бичнэ. Тэмдэгтийн зарлах char s[5]; Тэмдэгтэд анхны утга оноох char c[] = "abcd"; char c[50] = "abcd"; char c[] = {'a', 'b', 'c', 'd', '0'}; char c[5] = {'a', 'b', 'c', 'd', '0'}; Тэмдэгт Тэмдэгт мөр
  • 5. Тэмдэгт мөр Жишээ №1: Тэмдэгтийг scanf(); функцээр гараас оруулах #include <stdio.h> int main() { char name[20]; printf("Enter name: "); scanf("%s", name); printf("Your name is %s.", name); return 0; } Үр дүн: Enter name: Dennis Ritchie Your name is Dennis. D e n n i s - [0] [1] [2] [3] [4] [5] [6]name Утга Дээрх жишээнд Dennis Ritchie гэсэн тэмдэгт мөрний зөвхөн "Dennis" хадгалагдаж байна. "Dennis" дараа хоосон зай авсанаас хойшх тэмдэг мөр хадгалагдахгүй.
  • 6. Тэмдэгт мөр Жишээ №2: Тэмдэгтийг fgets() функцээр гараас оруулж, puts() хэвлэх #include <stdio.h> int main() { char name[30]; printf("Enter name: "); fgets(name, sizeof(name), stdin); // read string printf("Name: "); puts(name); // display string return 0; } Үр дүн: Enter name: Tom Hanks Name: Tom Hanks T o m H a n k s [0] [1] [2] [3] [4] [5] [6] [7] [8]name Утга Хэрэглэгчийн оруулсан мөрийг уншихын тулд fgets() функцийг ашигласан болно.
  • 7. Тэмдэгт мөр fgets() функцын бичигдэх хэлбэр fgets(нэр, sizeof(нэр), stdin); // read string sizeof(name) дээд тал нь 30 тэмдэгт авах боломжтой. Мөрийг хэвлэхийн тулд бид puts(name); -ийг ашигласан болно. Тэмдэглэл: get() функц нь хэрэглэгчийн оролтыг авах явдал байж болно. Гэсэн хэдий ч С стандартаас хасагдсан болно. Get() нь дурын урт тэмдэгт оруулах боломжийг олгодогтой холбоотой юм. Тиймээс буфер хальж магадгүй юм.
  • 10. Тэмдэгт мөр Тэмдэгт мөрийг ашиглахаас өмнө тэмдэгт мөрт зориулсан санах ойг хуваарилах ёстой.
  • 12. Тэмдэгт мөр Мөртэй ажилладаг функцууд C <string.h> толгой файл нь тэмдэгт мөрүүдтэй ажиллах дараах функцуудтай. Мөрийг хуулбарлах strcpy(); Бичигдэх хэлбэр char* strcpy(char* s1, const char* s2); Үйлдэл: s2 мөрийг s1 мөр рүү хуулна. Мөрүүдийг нэгтгэх strcat(); Бичигдэх хэлбэр char* strcat(char* s1, const char* s2); Үйлдэл: S2 мөрийг s1 мөрний төгсгөлд холбоно.
  • 13. Тэмдэгт мөр Мөрийн уртыг олох strlen(); Бичигдэх хэлбэр char* strlen(char* s1); Үйлдэл: S1 мөрийн уртыг буцаана. Мөрийг харьцуулах strcmp(); Бичигдэх хэлбэр char* strcmp(char* s1, const char* s2); Үйлдэл: s1 ба s2 ижил байвал 0 буцаана; s1<s2 бол 0-ээс бага; s1> s2 бол 0-ээс их. Жич: Хэрэглэгч s2 тэмдэгт мөрүүдийг гараас оруулж дуусаад 0 тэмдэгтийг оруулснаар тэмдэгт мөр дуусна.
  • 15. Тэмдэгт мөр Жишээ №3: Мөр дэх тэмдэгтүүдийн давтамжийг олох 1. #include <stdio.h> 2. int main() { 3. char str[1000], ch; int count = 0; 4. printf("Enter a string: "); 5. fgets(str, sizeof(str), stdin); 6. printf("Enter a character to find its frequency: "); 7. scanf("%c", &ch); 8. for (int i = 0; str[i] != '0'; ++i) 9. { 10. if (ch == str[i]) ++count; 11.} 12.printf("Frequency of %c = %d", ch, count); 13.return 0; 14.} Үр дүн: Enter a string: This website is awesome. Enter a character to find its frequency: e Frequency of e = 4
  • 16. Тэмдэгт мөр Жишээ №4: Мөр дэх тэмдэгтүүдээс эгшиг, гийгүүлэгч, тоог олох 1. include <stdio.h> 2. int main() { 3. char line[150]; int vowels, consonant, digit, space; 4. vowels = consonant = digit = space = 0; 5. printf("Enter a line of string: "); 6. fgets(line, sizeof(line), stdin); 7. for (int i = 0; line[i] != '0'; ++i) { 8. if (line[i] == 'a' || line[i] == 'e' || line[i] == 'i' || line[i] == 'o' || line[i] == 'u' || 9. line[i] == 'A' || line[i] == 'E' || line[i] == 'I' || line[i] == 'O' || line[i] == 'U') 10. { ++vowels; } 11. else if ((line[i] >= 'a' && line[i] <= 'z') || (line[i] >= 'A' && line[i] <= 'Z')) 12. { ++consonant; } 13. else if (line[i] >= '0' && line[i] <= '9') { ++digit; } else if (line[i] == ' ') 14. { ++space; } } 15. printf("Vowels: %d", vowels); 16. printf("nConsonants: %d", consonant); 17. printf("nDigits: %d", digit); 18. printf("nWhite spaces: %d", space); 19. return 0; } Үр дүн: Enter a line of string: adfslkj34 34lkj343 34lk Vowels: 1 Consonants: 11 Digits: 9 White spaces: 2
  • 17. Тэмдэгт мөр Жишээ №5: Бичсэн өгүүлбэрийг дэд функц буюу рекурс ашиглан урвуу хэлбэр рүү шилжүүлэх 1. #include <stdio.h> 2. void reverseSentence(); 3. int main() { 4. printf("Enter a sentence: "); 5. reverseSentence(); return 0; 6. } 7. void reverseSentence() 8. { 9. char c; scanf("%c", &c); 10.if (c != 'n') { reverseSentence(); printf("%c", c); } 11.} Үр дүн: Enter a sentence: margorp emosewa awesome program
  • 18. Тэмдэгт мөр Жишээ №6: Мөрийн уртыг олох 1. #include <stdio.h> 2. int main() 3. { 4. char s[] = "Programming is fun"; 5. int i; for (i = 0; s[i] != '0'; ++i); 6. printf("Length of the string: %d", i); 7. return 0; 8. } Үр дүн: Length of the string: 18
  • 19. Тэмдэгт мөр Жишээ №7: Хоёр мөрийг нэгтгэх 1. #include <stdio.h> 2. int main() { 3. char s1[100] = "programming ", s2[] = "is awesome"; int length, j; 4. // store length of s1 in the length variable 5. length = 0; 6. while (s1[length] != '0') { ++length; } 7. // concatenate s2 to s1 8. for (j = 0; s2[j] != '0'; ++j, ++length) 9. { s1[length] = s2[j]; } 10. // terminating the s1 string 11. s1[length] = '0'; 12. printf("After concatenation: "); 13. puts(s1); 14. return 0; } Үр дүн: After concatenation: programming is awesome
  • 20. Тэмдэгт мөр Жишээ №8: Мөрийг хуулбарлах 1. #include <stdio.h> 2. int main() 3. { 4. char s1[100], s2[100], i; 5. printf("Enter string s1: "); 6. fgets(s1, sizeof(s1), stdin); 7. for (i = 0; s1[i] != '0'; ++i) 8. { s2[i] = s1[i]; } 9. s2[i] = '0'; 10. printf("String s2: %s", s2); 11. return 0; 12. } Үр дүн: Enter string s1: Hey fellow programmer. String s2: Hey fellow programmer.
  • 21. 1. #include <stdio.h> 2. int main() { 3. char line[150]; 4. printf("Enter a string: "); 5. fgets(line, sizeof(line), stdin); // take input 6. for (int i = 0, j; line[i] != '0'; ++i) { 7. // enter the loop if the character is not an alphabet 8. // and not the null character 9. while (!(line[i] >='a' && line[i] <='z') && !(line[i] >='A' && line[i] <='Z') && !(line[i] =='0')) 10. { for (j = i; line[j] != '0'; ++j) { 11. // if jth element of line is not an alphabet, 12. // assign the value of (j+1)th element to the jth element 13. line[j] = line[j + 1]; } line[j] = '0'; } } 14. printf("Output String: "); 15. puts(line); 16. return 0; } Тэмдэгт мөр Жишээ №9: Цагаан толгойноос бусад тэмдэгт тэмдэгтүүдийг устгах Үр дүн: Enter a string: p2'r-o@gram84iz./ Output String: programiz
  • 23. Тэмдэгт мөр Жишээ №10: Мөрийн уртыг strlen() функц ашиглах олох 1. #include <stdio.h> 2. #include <string.h> 3. int main() { 4. char a[20]="Program"; 5. char b[20]={'P','r','o','g','r','a','m','0'}; 6. // using the %zu format specifier to print size_t 7. printf("Length of string a = %zu n",strlen(a)); 8. printf("Length of string b = %zu n",strlen(b)); 9. return 0; 10.} Үр дүн: Length of string a = 7 Length of string b = 7
  • 24. Тэмдэгт мөр Жишээ №11: Strcat() ашиглан хоёр мөрийг нэгтгэх 1. #include <stdio.h> 2. #include <string.h> 3. int main() { 4. char str1[100] = “Programming", str2[] = “C 2020"; 5. // concatenates str1 and str2 6. // the resultant string is stored in str1. 7. strcat(str1, str2); 8. puts(str1); 9. puts(str2); 10.return 0; } Үр дүн: Programming C 2020 Programming
  • 25. Тэмдэгт мөр Жишээ №12: Strcpy() ашиглан мөрийг хуулбарлах 1. #include <stdio.h> 2. #include <string.h> 3. int main() 4. { 5. char str1[] = "abcd", str2[] = "abCd", str3[] = "abcd"; 6. int result; 7. // comparing strings str1 and str2 8. result = strcmp(str1, str2); 9. printf("strcmp(str1, str2) = %dn", result); 10.// comparing strings str1 and str3 11.result = strcmp(str1, str3); 12.printf("strcmp(str1, str3) = %dn", result); 13.return 0; 14. } Үр дүн: C programming
  • 26. #include <stdio.h> #include <string.h> int main() { char str1[] = "abcd", str2[] = "abCd", str3[] = "abcd"; int result; // comparing strings str1 and str2 result = strcmp(str1, str2); printf("strcmp(str1, str2) = %dn", result); // comparing strings str1 and str3 result = strcmp(str1, str3); printf("strcmp(str1, str3) = %dn", result); return 0; } Тэмдэгт мөр Жишээ №13: strcmp() функц ашиглан мөрүүдийг харьцуулах Үр дүн: strcmp(str1, str2) = 32 strcmp(str1, str3) = 0 Тайлбар: str1 ба str2 мөрүүдийн хоорондох харьцуулахад гурав дахь тэмдэгт ‘с' -ийн ASCII утга 99, 'C' -ийн ASCII утга 67 байна. Тиймээс буцах утга 32 болно. Str1 ба str3 мөрүүдийг харьцуулж үзэхэд хоёр мөр адилхан тул үр дүн нь 0 болно.