Çıkış Düzenleme
Çıkış Düzenleme
Çıkış fonksiyonları sırasıyla, verileri standart giriş akışından alırlar ve veriyi standart çıkış akışından çıkartırlar. printf’in biçimlendirme yeteneklerini detaylı bir şekilde göreceğiz.
Çıkış Biçimlendirmek
Çıktıların biçimlendirme işlemi printf ile yapılır. Her belirtilen printf biçim kontrol dizesi içerir. Biçim kontrol dizesi; dönüşüm belirteçleri, bayraklar,alan genişlikleri, duyarlılık ve bilgi karakterlerinden oluşur. Oluşan bu ifadeler yüzde işareti (%) ile birlikte dönüşüm tarifini oluştururlar.
- Ondalıklı sayıları istenen basamağa kadar yuvarlamak.
- Bir sütun sayıyı, ondalıklı kısımları hizalamak.
- Çıktıları sağa dayamak ve sola dayamak
- Bir satır çıktının istenen konumlarına bilgi karakterleri yerleştirmek.
- Ondalıklı sayıları üssel biçimde ifade etmek.
- İşaretsiz tamsayıları sekizlik ve onaltılık biçimde temsil etmek.
- Her tipteki veriyi istenen alan genişliği ve duyarlıkla yazdırmak.
printf ( biçim kontrol dizesi,diğer argümanlar);
biçim kontrol dizesi: çıktının biçimini tanımlar.
diğer argümanlar: tercihe bağlıdırlar.
Tamsayıları Yazdırmak
Bir tamsayı, 776 ya da -52 gibi, ondalık kısım içermeyen sayılardır.
d İşaretli bir tamsayıyı onluk sistemde gösterir.
i İşaretli bir tamsayıyı onluk sistemde gösterir.
o İşaretsiz bir tamsayıyı sekizlik sistemde gösterir.
u İşaretsiz bir tamsayıyı onluk sistemde gösterir.
x-X İşaretsiz bir tamsayıyı onaltılık sistemde gösterir. X, 0-9 rakamlarının ve A-F harflerinin gösterimini ve x,-0-9 rakamları ve a-f gösterilmesini sağlar.
h-ı Herhangi bir tamsayı belirtecinden önce kullanıldığında sırasıyla, short ya da long bir tamsayının gösterileceğini belirtir.
#include <stdio.h> int main( ) { printf( "%d\n", 455 ); /* i ve d printf ifadesinde aynıdırlar. */ printf( "%i\n", 455 ); printf( "%d\n", +455 ); printf( "%d\n", -455 ); printf( "%hd\n", 32000 ); printf( "%ld\n", 2000000000 ); printf( "%o\n", 455 ); printf( "%u\n", 455 ); printf( "%u\n", -455 ); printf( "%x\n", 455 ); printf( "%X\n", 455 ); return 0; }
Ondalıklı Sayıları Yazdırmak
Bir ondalıklı değer, 33.5 ya da 657.983 gibi ondalıklı bir kısım içerir. Ondalıklı sayılar bir çok biçimden biri ile gösterilirler.
150.4582 değeri bilimsel gösterimde
1.504582 x 10´2
üssel yazılım ile bilgisayarda
1.504582E+02
şeklinde temsil edilir. Bu gösterim 1.504582’in 10’un 2. kuvveti ile ( E+02 ) çarpılacağını belirtir. e , E ve f dönüşüm belirteçleri ile yazdırılan değerler, noktadan sonra aksi belirtilmedikçe 6 basamak duyarlıkta yazdırılırlar.
g ya da G ile ondalıklı kısımda birbirini takip eden sıfırlar yazdırılmaz. Ondalık noktasının yazdırılması için en az bir ondalıklı basamağa ihtiyaç vardır.%g dönüşüm belirteciyle
0.0000875 8.75e-05
8750000.0 8.75e+06
8.75 8.75
87.50 87.5
875 875
biçiminde yazdırılır.
e ya da E ondalıklı bir değeri üssel yazılım biçiminde gösterir.
f ondalıklı sayıları gösterir.
g ya da G ondalıklı değerleri f ya da e (ya da E) üssel biçiminde gösterir.
L Herhangi bir dönüşüm belirtecinden önce kullanıldığında, bir long double ondalıklı değerin yazdırılacağını belirtir.
#include <stdio.h> int main( ) { printf( "%e\n", 1234567.89 ); printf( "%e\n", +1234567.89 ); printf( "%e\n", -1234567.89 ); printf( "%E\n", 1234567.89 ); printf( "%f\n", 1234567.89 ); printf( "%g\n", 1234567.89 ); printf( "%G\n", 1234567.89 ); return 0; }
String Karakterleri Yazdırmak
c ve s dönüşüm belirteçleri, karakterleri ve stringleri yazdırmak için kullanılır. c döüşüm belirteci, bir char argümana ihtiyaç duyar. s dönüşüm belirteci, argüman olarak char gösteren bir göstericiye ihtiyaç duyar.
#include <stdio.h> int main( ) { char karakter = 'A'; char string[ ] ="Bu bir stringtir"; const char *stringPtr = "Bu da bir stringtir"; printf( "%c\n", karakter ); printf( "%s\n", "Bu bir stringtir " ); printf( "%s\n", string ); printf( "%s\n", stringPtr ); return 0; }
Diğer Dönüşüm Belirteçleri
p, n ve % dönüşüm belirteçleri
p Bir gösterici değerini uygulama bağımlı olarak yazdırır.
n O andaki printf ifadesinde yazdırılan karakter sayısını tutar.
% Yüzde karakterini yazdırır.
#include <stdio.h> int main( ) { int *ptr; int x = 12345, y; ptr = &x; printf( "ptr nin degeri %p\n", ptr ); printf( "x in adresi %p\n\n", &x ); printf( "Bu satirda yazdiirilan toplam karakter sayisi:%n", &y ); printf( " %d\n\n", y ); y = printf( "Bu satirda 27 karakter var\n" ); printf( "%d karakter yazildi\n\n", y ); printf( "%% isaretinin bicim kontrol dizesinde yazdirilmasi \n" ); return 0; }
Hazır Bilgileri Yazdırmak
\’ Tek tırnak ( ‘ ) karakterini yazdırır.
\ ” Çift tırnak ( “ ) karakterini yazdırır.
\? Soru işareti ( ? ) karakterini yazdırır.
\\ Ters çizgi ( \ ) karakterini yazdırır.
\a Duyulabilen (zil) ya da görülebilen bir alarm çalıştırır.
\b İmleci o andaki konumundan bir geriye taşır.
\f İmleci bir sonraki sayfanın başına taşır.
\n İmleci bir sonraki yeni satırın başına taşır.
\r İmleci o andaki satırın başına taşır.
\t İmleci bir sonraki yatay tab konumuna taşır.
\v İmleci bir sonraki düşey tab konumuna taşır.