int num = -27; int number = 27; float f = 123.456; char r = 'a'; char str[4] = "abc"; printf("%d\n", num); /* -27 */ printf("%u\n", number); /* 27 */ printf("%o\n", number); /* 33 */ printf("%x\n", number); /* lb */ printf( "%f\n", f); /* 123.456001 */ printf("%e\n", f); /* 1.23456e+02 */ printf("%E\n", f); /* 1.23456E+02 */ printf("%c\n", r); /* a */ printf("%s\n", str); /* abc */ return 0; } Prosent % belgisi va o’zgartirish simvoli orasiga quyidagi simvollarni qo’yish mumkin.
Chiqarilayotgan argument chapga tekislash lozimligini ko’rsatuvchi minus belgisi.
Maydon minimal uzunligini ko’rsatuvchi raqamlar qatori.
Maydon uzunligini keyingi raqamlar qatoridan ajratuvchi nuqta.
Biror qatordan qancha simvol ajratib olish lozimligini hamda float yoki double turidagi sonlarda nuqtadan keyin qancha kasr raqamlari bosib chiqarilishini ko’rsatuvchi raqamlar ketma-ketligi.
Chiqarilayotgan son long turiga tegishli ekanligini ko’rsatuvchi uzun o’nlik markeri l.
% dan keyingi simvol o’zgartirish simvoli bo’lmasa u bosmaga chiqariladi. % simvolini o’zini bosmaga chiqarish uchun %% belgisini berish lozim.
Quyidagi jadval har xil spesifikasiyalarni "HELLO, WORLD" (12 simvolli) so’zini bosishga ta’sirini ko’rsatadi. Bu yerda har bir maydon uzunligini ko’rsatish uchun maydon oxiriga ikki nuqta qo’yilgan.
:%10S: :HELLO, WORLD:
:%10-S: :HELLO, WORLD:
:%20S: : HELLO, WORLD:
:%-20S: :HELLO, WORLD :
:%20.10S: : HELLO, WOR:
:%-20.10S: :HELLO, WOR :
:%.10S: :HELLO, WOR:
int i = 9; printf("%d\n",i); printf("%d\n",k); return 0; } Natija:
9 6