08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

girilen karakterlerin hepsi diziye yerleştirilmez. Klavyeden alınan ilk boşluk karakteri ile<br />

diziye yerleştirme işlemi sona erer. Aşağıdaki programı inceleyin:<br />

#include <br />

int main()<br />

{<br />

char name[20];<br />

char fname[30];<br />

int no;<br />

}<br />

printf("isim soyisim ve numara girin : ");<br />

scanf("%s%s%d", name, fname, &no);<br />

/***/<br />

return 0;<br />

Programın çalışma zamanında scanf işlevi çağrıldığında aşağıdaki girişin yapıldığını<br />

düşünelim. ('_' karakteri boşluk karakterini gösteriyor):<br />

__Necati___Ergin___564<br />

Bu durumda Necati yazısı name dizisine, Ergin yazısı fname dizisine, 564 tamsayı değeri<br />

ise no isimli değişkene yerleştirilir.<br />

puts işlevi<br />

puts, standart bir C işlevidir. Bu işlev, bir karakter dizisinde tutulan yazıyı ekrana<br />

yazdırmak için kullanılır. Yazıyı saklayan karakter dizisinin ismini (dizi ismi derleyici<br />

tarafından otomatik olarak dizinin başlangıç adresine dönüştürülmektedir) parametre<br />

olarak alır. puts işlevi, karakter dizisini ekrana yazdıktan sonra imleci sonraki satırın<br />

başına geçirir:<br />

#include <br />

int main()<br />

{<br />

char name[20];<br />

printf("bir isim girin : ");<br />

gets(name);<br />

puts(name);<br />

}<br />

return 0;<br />

Yukarıdaki örnekte gets işlevi ile klavyeden alınan yazı, puts işlevi ile ekrana yazdırılıyor.<br />

Karakter dizileri içinde tutulan yazıları ekrana yazdırmak için, standart printf işlevi de<br />

kullanılabilir. Bu durumda formatlama karakterleri olarak %s kullanılarak dizinin ismi<br />

(dizinin başlangıç adresi) ile eşlenir.<br />

printf("%s\n", name);<br />

ile<br />

puts(name);<br />

219

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!