Mustaqil ishi mavzu: C++ tilida Fayllar bilan ishlash Bajardi: Berdiyeva X reja: Kirish


Tur alomati Kutilayotgan qiymat



Yüklə 44,63 Kb.
səhifə10/18
tarix02.01.2022
ölçüsü44,63 Kb.
#42892
1   ...   6   7   8   9   10   11   12   13   ...   18
Mustaqil ishi mavzu C tilida Fayllar bilan ishlash Bajardi B

Tur alomati

Kutilayotgan qiymat

Argument turi

Son turidagi argument

d, D

O‘nlik butun

int * arg yoki long * arg

E,e

Suzuvchi nuqtali son

float * arg

F

Suzuvchi nuqtali son

float * arg

G,g

Suzuvchi nuqtali son

float * arg

O

Sakkizlik son

int * arg

O

Sakkizlik son

long * arg

I

O‘nlik, sakkizlik va o‘n oltilik butun son

int * arg

I

O‘nlik, sakkizlik va o‘n oltilik butun son

long * arg

U

Ishorasiz o‘nlik son

Unsigned int * arg

U

Ishorasiz o‘nlik son

Unsigned long * arg

X

O‘n oltilik son

int * arg

X

O‘n oltilik son

int * arg

Belgilar

S

Satr

char * arg (belgilar massivi)

C

Belgi

char * arg (belgi uchun maydon kengligi berilishi mumkin (masalan, %4s). N belgidan tashkil topgan belgilar massiviga ko‘rsatkich: char arg[N])

%

‘%’ belgisi

Hech qanday almashtirishlar baja–rilmaydi, ‘%’ belgisi saqlanadi.

Ko‘rsatkichlar

N

int * arg

%n argumentigacha muvaffaqiyatli o‘qilgan belgilar soni, aynan shu int ko‘rsatkichi bo‘yicha adresda saqlanadi.

P

YYYY:ZZZZ yoki ZZZZ ko‘rinishidagi o‘n oltilik

Ob’ektga ko‘rsatkich (far* yoki near*).

Oqimdagi belgilar bo‘lagini almashtiriladigan tur alomati-ning qabul qilishi mumkin bo‘lgan belgilar 12.2-jadvalda keltirilgan.

12.3–jadval. Format aniqlashtiruvchilari va ularning vazifasi



Komponenta

Bo‘lishi

shart yoki yo‘q

Vazifasi

[bayroq]

Yo‘q

Bayroq belgilari. CHiqarilayotgan qiy-matni chapga yoki o‘nga tekislashni, sonning ishorasini, o‘nlik kasr nuqta-sini, oxirdagi nollarni, sakkizlik va o‘n oltilik sonlarning alomatlarni chop etishni boshqaradi. Masalan, ‘-‘ bayrog‘i qiymatni ajratilgan o‘ringa nisbatan chapdan boshlab chiqarishni va kerak bo‘lsa o‘ngdan probel bilan to‘ldirishni bildiradi, aks holda chap tomondan probellar bilan to‘ldiradi va davomiga qiymat chiqariladi.

[]

Yo‘q

Maydon kengligini aniqlashtiruvchisi. CHiqariladigan belgilarning minimal sonini aniqlaydi. Zarur bo‘lsa qiymat yozilishidan ortgan joylar probel bilan to‘ldiriladi.

[.]

Yo‘q

Aniqlik. CHiqariladigan belgilarning maksimal sonini ko‘rsatadi. Sondagi raqamlarning minimal sonini.

[F|N|h|l|L]

Yo‘q

O‘lcham modifikatori. Argumentning qisqa (short - h) yoki uzun (long –l,L) ko‘ri-nishini, adres turini aniqlaydi.




Ha

Argument qiymati almashtiriladigan tur alomati belgisi

Formatli yozish funksiyasi printf() quyidagi prototipga ega:

int printf(const char * [,,...])

Bu funksiya standart oqimga formatlashgan chiqarishni amalga oshiradi. Funksiya argumentlar ketma-ketligidagi har bir argument qiymatini qabul qiladi va unga satridagi mos format aniqlashtiruvchisini qo‘llaydi va oqimga chiqaradi.

12.4–jadval. printf() funksiyasining almashtiriladigan tur belgilari



Tur alomati

Kutilayotgan qiymat

CHiqish formati

Son qiymatlari

D

Butun son

Ishorali o‘nlik butun son

I

Butun son

Ishorali o‘nlik butun son

O

Butun son

Ishorasiz sakkizlik butun son

U

Butun son

Ishorasiz o‘nlik butun son

X

Butun son

Ishorasiz o‘n oltilik butun son (a,b,c,d,e,f belgilari ishlatiladi)

X

Butun son

Ishorasiz o‘n oltilik butun son (A,B,C,D,E,F belgilari ishlatiladi)

F

Suzuvchi nuqtali son

[-]dddd.dddd ko‘rinishidagi suzuvchi nuqtali son

E

Suzuvchi nuqtali son

[-]d.dddd yoki e[+/-]ddd ko‘rini–shidagi suzuvchi nuqtali son

G

Suzuvchi nuqtali son

Ko‘rsatilgan aniqlikka mos e yoki f shaklidagi suzuvchi nuqtali son

E, G

Suzuvchi nuqtali son

Ko‘rsatilgan aniqlikka mos e yoki f shaklidagi suzuvchi nuqtali son. e format uchun ‘E’ chop etiladi.

Belgilar

S

Satrga ko‘rsatkich

0-belgisi uchramaguncha yoki ko‘rsa-tilgan aniqlikka erishilmaguncha belgilar oqimga chiqariladi.

C

Belgi

Bitta belgi chiqariladi

%

Hech nima

‘%’ belgisi oqimga chiqariladi.

Ko‘rsatkichlar

N

int ko‘rsatkich (int* arg)

%n argumentigacha muvaffaqiyatli chiqarilgan belgilar soni, aynan shu int ko‘rsatkichi bo‘yicha adresda saqlanadi.

P

Ko‘rsatkich

Argumentni YYYY:ZZZZ yoki ZZZZ ko‘rinishidagi o‘n oltilik songa aylantirib oqimga chiqaradi.

Har bir format aniqlashtiruvchisiga bitta o‘zgaruvchi adresi mos kelishi kerak. Agar format aniqlashtiruvchilari soni o‘zgaruvchi-lardan ko‘p bo‘lsa, natijada nima bo‘lishini oldindan aytib bo‘lmaydi. Aks holda, ya’ni o‘zgaruvchilar soni ko‘p bo‘lsa, ortiqcha o‘zgaruvchilar inobatga olinmaydi. Agar oqimga chiqarish muvaf-faqiyatli bo‘lsa, funksiya chiqarilgan baytlar sonini qaytaradi, aks holda EOF.

printf() funksiyasining satri argumentlarni almash-tirish, formatlash va berilganlarni oqimga chiqarish jarayonini boshqaradi va u ikki turdagi ob’ektlardan tashkil topadi:

oqimga o‘zgarishsiz chiqariladigan oddiy belgilar;

argumentlar ro‘yxatidagi tanlanadigan argumentga qo‘llani-ladigan format aniqlashtiruvchilari.

Format aniqlashtiruvchisi quyidagi ko‘rinishga ega:

% [][<.kenglik>] [.][F|N|h|l|L]

Format aniqlashtiruvchisi ‘%’ belgisidan boshlanadi va undan keyin 12.3–jadvalda keltirilgan shart yoki shart bo‘lmagan kompo-nentalar keladi.

Almashtiriladigan tur belgisining qabul qilishi mumkin bo‘lgan belgilar 12.4- jadvalda keltirilgan.

Berilganlar qiymatlarini oqimdan o‘qish va oqimga chiqarishda scanf() va prinf() funksiyalaridan foydalanishga misol:

#include

int main()

{

int bson, natija;



float hson;

char blg, satr[81];

printf("\nButun va suzuvchi nuqtali sonlarni,");

printf("\nbelgi hamda satrni kiriting\n");

natija=scanf("%d %f %c %s", &bson, &hson,&blg,satr);

printf("\nOqimdan %d ta qiymat o'qildi ",natija);

printf("va ular quyidagilar:");

printf("\n %d %f %c %s \n",bson, hson, blg, satr);

return 0;

}

Programma foydalanuvchidan butun va suzuvchi nuqtali sonlarni, belgi va satrni kiritishni so‘raydi. Bunga javoban foydalanuvchi tomonidan



10 12.35 A Satr

qiymatlari kiritilsa, ekranga

Oqimdan 4 ta qiymat o'qildi va ular quyidagilar:

10 12.35 A Satr

satrlari chop etiladi.

Fayldan o‘qish-yozish funksiyalari

Fayl oqimi bilan o‘qish-yozish amalini bajarish uchun fayl oqimini ochish zarur. Bu ishni, prototipi

FILE * fopen(const char* filename, const char *mode);

ko‘rinishida aniqlangan fopen() funksiyasi orqali amalga oshiri-ladi. Funksiya filename nomi bilan faylni ochadi, u bilan oqimni bog‘laydi va oqimni identifikatsiya qiluvchi ko‘rsatkichni javob tariqasida qaytaradi. Faylni ochish muvaffaqiyatsiz bo‘lganligini fopen() funksiyasining NULL qiymatli javobi bildiradi.

Parametrlar ro‘yxatidagi ikkinchi - mode parametri faylni ochish rejimini aniqlaydi. U qabul qilishi mumkin bo‘lgan qiymat-lar 12.5- jadvalda keltirilgan.

12.5-jadval. Fayl ochish rejimlari



Mode qiymati


Yüklə 44,63 Kb.

Dostları ilə paylaş:
1   ...   6   7   8   9   10   11   12   13   ...   18




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin