5-ma`ruza si dasturlash tilida kiritish-chiqarish funktsiyalari va operatorlari


Download 210.08 Kb.
Pdf ko'rish
bet4/6
Sana08.01.2022
Hajmi210.08 Kb.
#237947
1   2   3   4   5   6
Bog'liq
5-Maruza-1

 

getch funktsiyasi 

Dasturlash  jarayonida  ba`zan  ekrandan  bitta  simvolni  kiritish  talab  etiladi, 

yani u char  tipidagi funktsiya bo’lib hisoblanadi. Masalan 

char m; 


m=getch(); 

deb  yozilgan  bo’lsa,  ekrandan  simvol  kiritish  kutib  turiladi  va  ixtiyoriy  belgi 

klaviaturadan  bosilishi  bilanoq  u  m  ga  o’zlashtirilib  dastur  bajarilishi  davom 



ettiriladi.  Shuning  uchun  ham  dasturchilar  dasturda  kutish  hollarini  hosil  qilish 

uchun getch funktsiyasiga ko’p murojaat qiladilar. 

 

Ma`lumotlarni bosmaga chiqarish 

Si  da  malumotlarni  bosmaga  chiqaruvchi  asosiy  funktsiya  bo’lib  printf 

hisoblanadi. Uning umumiy ko’rinishi quyidagicha: 

printf(,,…); 

bu  erda    -  “  –  belgisi  bilan  boshlanib,  shu  belgi  bilan  tugalanuvchi 

obektlarni  bosmada  ko’rinishini  aniqlashtiruvchi  andoza.  Ob`ektlar  bosmaga 

chiqarilishdan oldin format satridagi andozaga ega bo’lishadi. Ob`ekt – o’zgaruvchi, 

o’zgarmas, ifoda, funktsiya nomi bo’lishi mumkin. 



dagi quyidagi ko’rinishda bo’ladi: 

% [flags] [width] [. precision] [F/ N / h / 1 / L.] 

bu  erda  [flags]  –  bosmaga  chiqarishda  tasvirlanadigan  belgini  tekislash  uchun 

xizmat qiladi va quyidagilardan biri bo’lishi mumkin 

-  - chap tomon maydoni bo’yicha tekislab bosmaga chiqarish 

+  - har doim raqamli belgini bosmaga chiqarish 

#  - o’nli sonlarni bosma chiqarishga ta`sir ko’rsatmaydi, biroq sakkizlik sanoq 

sistemasidagi son oldiga nol, o’n oltilik sanoq sistemasidagi son oldiga Ox yoki 

OX belgi bosmaga chiqariladi. 

Barcha  format  %  belgisi  bilan  boshlanib,  bitta  harfga  ega  bo’ladi.  Bu  harf 

bosmaga chiqariluvchi ob`ektning bosmadagi tipini aniqlaydi. Agar ob`ekt tipi va 

formatda  belgilangan  tip  bir-biriga  mos  kelmasa,  sistema  ob`ekt  tipini  formatda 

belgilangan tipga almashtirishga harakat qiladi.  

Shuningdek  maydon  uzunligini  %  bilan  format  belgisi  o’rtasida  berishimiz 

ham mumkin. Masalan, agar dastur qismi  

int a=5.267; 

printf(“%f”,a); 

kabi bo’lsa, ekranda 5.267000 soni chiqadi. Endigi dastur qismi 

int a=5.267; 

printf(“%4.2f”,a); 

kabi bo’lsa ekranda  5.27 soni chikadi, chunki biz chop etiladigan kattalik uchun 4 

ta  joy  undan  ikkitasini  verguldan  keyinga  ajratdik.  Misoldan  ko’rinadiki,  agar 

verguldan keyinga kam joy ajratilgan bo’lsa, sonning kasr qismi yaxlitlanadi. Agar 

chop etiladigan son formatda keltirilgan shablondan katta bo’lsa, shablon inobatga 

olinmaydi va son xotiradagidek chop etiladi. Masalan, 

int a=225.567; 

printf(“%4.2”,a); 

kabi dastur qismi ishlasa, ekranda 225.567 chiqariladi. 

Chiqarish  funktsiyasida  izohlar  ham  yozish  mumkin.  Izohlar  format  satrida 

to’g’ridan-to’g’ri yoziladi. Masalan, 

printf(“sum= %f”,s); 

degan buyruqdan so’ng ekranda sum=so’zi va s o’zgaruvchining qiymati chiqariladi.  

printf(“ Salom toglar \n”); 



buyrug’i  bilan  esa  ekranda  «Salom  toglar»  so’zi  chiqarilib,  kursor  keyingi  satrga 

o’tkaziladi. 

Agar biz bosmaga «%» belgisining o’zini chiqarmoqchi bo’lsak, 

printf “%%”); 

kabi yozishimiz kerak bo’ladi. 

Agar biz bosmaga «\» belgisini chiqarishimiz kerak bo’lsa, 

printf(“\\”); kabi yozishimiz kerak. 

Umuman,  chiqarishda  «\»  belgisi  va  undan  keyingi  simvol  birgalikda 

boshqaruvchi  bo’lib  hisoblanadi.  Masalan,  printf(“\n”);  buyrug’i  bilan  kursor 

keyingi satr boshiga o’tkaziladi. 

Eng ko’p ishlatiladigan boshqaruvchi belgilar quyidagilardir: 

 

- \f –  ekranni tozalash; 



 

- \t –  kursorni tabulyatsiyalash; 

  

- \b – kursorni bir pozitsiya orqaga o’tkazish; 



           -\n – kursorni yangi satr boshiga o’tkazish; 

Agar  biz  faqatgina  biror  izohni  bosmaga  chiqarmoqchi  bo’lsak,  quyidagi 

misoldagidek ish tutishimiz mumkin: 

printf(“Ushbu dastur Si da tuzilgan”); 

Ushbu buyruq bajarilsa, ekrandagi kursor turgan joydan boshlab  

Ushbu dastur Si da tuzilgan 

degan yozuv chiqariladi. 

 

Quyidagi  misolda  turli  ko’rinishdagi  format  satrlarining  qo’llanilishi 



ko’rsatilag.  

# include  

int. main ( ) 

{  


int anint = 67; 

unsegned char abyte = 128; 

float asisnal = 388.0; 

char achar = 'G'; 

double adouble = 1.130e + 00



Printf (" %3d + %2d = %3d \n", aByte, anint, aByte + aninte'); 

Printf ("Haqiqiy soni bosmaga chiqarish \ n"); 

Printf (" % 6.4f / % 6.4f = % 7.5f \ n” , a signal, adouble, asignal / adouble); 

Printf ("Haqiqiy soni eksponentsial formada bosmaga chiqarish\ n"); 

Printf (" % 6.4e / % 6.4le = % 7.5le \ n", asignle, adouble, asignle / adouble); 

Printf ("Haqiqiy soni bosmaga chiqarish\ n"); 

Printf ((" % 6.4g / % 6.4lg = % 7.5Ig \ n, "asignle, adouble, asignle / adouble); 

Printf (" Simvol tipda o’zgaruvchi qiymati : % c \ n", achar); 

Printf ( ASSII kodi uchun % s ig % d / n", achar, achar ); 

Return 0; 




Download 210.08 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling