Ergashov Ruslanning malumotlar tuzulmasi va algoritmlash fanidan muastqil ishi
Download 395.68 Kb.
|
mta
- Bu sahifa navigatsiya:
- Сўзлар
Функциялар ва сатрлар. Функцияларда сатрлар ишлатилганда уларнинг чегарасини кўрсатиш шарт эмас. Сатрларнинг узунлигини хисоблаш lenфункциясии қуйидагича таърифлаш мумкин:
int len(char c[]) { int m=0; for(m=0;c[m]!=’0’;m++); return m; }; Шу функциядан фойдаланилган дастурни келтирамиз: #include using namespace std; int len(char c[]) { int m=0; while(c[m++]); return m-1; }; int main() { char e[]="Pro Tempore!"; cout<<"\n"< Бу функциянинг стандарт варианти strlen деб аталади ва бу функциядан фойдаланиш учун string.hсарлавхали файлидан фойдаланиш лозим. http://dasturchi.uz http://dastur.uz Сатрдан нусха олиш strcpy функциясини С++ тилида қуйидагича таърифлаш мумкин: #include void strlen(char s1[], char s2[]) { int i=0; while(s2[i]!='\0') s1[i++]=s2[i]; s1[i]=s2[i]; } int main() { char s1[]="aaa"; char s2[]="ddd"; strcpy(s1,s2); cout<< s1; return 0; } Натижа: ddd Берилган сатрни тескарига айлантирувчи функция: reverse(char s[]) { int c, i, j; for(i = 0, j = strlen(s) - 1; i < j; i++, j--) c = s[i]; s[i] = s[j]; s[j] = c; } Кейинги мисолимизда T каторни S катор охирига уловчи STRCAT(S,T) функциясини кўриб чиқамиз: strcat(char s[], t[]) { int i, j; i = j = 0; while (s[i] != '\0') i++; while((s[i++] = t[j++]) != '\0') } 5.4. Сўзлар массивлари 87 http://dasturchi.uz http://dastur.uz Сўзлар массивини киритиш. С++ тилида сўзлар массивлари икки ўлчовли символли массивлар сифатида таърифланади. Мисол учун: char name[4][5]. Бу таъриф ёрдамида хар бири 5 та харфдан иборат бўлган 4 та сўзли массив киритилади. Сўзлар массивлари қуйидагича инициализация қилиниши мумкин: char Name[3][8]={ "Анвар","Миркомил","Юсуф"}. Бу таърифда хар бир сўз учун хотирадан 8 байт жой ажратилади ва хар бир сўз охирига '\0'белгиси куйилади. Сўзлар массивлари инициализация қилинганда сўзлар сони кўрсатилмаслиги мумкин. Бу холда сўзлар сони автоматик аниқланади: char comp[][9]={ "компьютер","принтер","картридж"}. Қуйидаги дастурда берилган харф билан бошланувчи сўзлар рўйхати босиб чиқарилади: #include { char a[10][10]; char c; for (int i=0;i<10;i++) cin>>a[i]; cin>>c; for (int i=0;i<10;i++) if (a[i][0]==c) cout< } Қуйидаги дастурда фан номи, талабалар рўйхати ва уларнинг бахолари киритилади. Дастур бажарилганда икки олган талабалар рўйхати босиб чиқарилади: #include { char a[10][10]; char s[10]; int k[10]; cin>>s; for (int i=0;i<10;i++) { cin>>a[i]; cin>>k[i]; 88 http://dasturchi.uz http://dastur.uz }; for (int i=0;i<10;i++) if (k[i]==2) cout< } Download 395.68 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling