Commodore sayı 24, sayfa 73
Sayfanın metni

Sayfa 73

Else ifadesi bir önceki if karşılaştırmasının doğru veya yanlış olmasına göre ardından gelen işlemi yapmaktadır. Eğer bir önceki if ifadesi doğruysa else ile başlayan işlem yapılmamakta, if ifadesi 0 mantıksal değerine karşılık geliyorsa bu işlem yapılmaktadır.

DİZİLER

C'de dizilerin kullanımı diğer dillerdeki dizi işlemlerine büyük benzerlik gösterir. C'de kullanılan tüm değişken tipleri çeşitli boyutlarda dizi oluşturabilir. Basit bir örnek programla tek boyutlu bir dizi kullanımı inceleyelim. Bu örnek klavyeden girilen karakterlerin sadece rakam olanlarını saymakta ve hangi rakamdan kaç defa giriş yapıldığını vermektedir. Ayrıca örnekte görüldüğü gibi dizilerin de kullanılmadan önce tanımlanması gerekmektedir. Bu tanımlamada dizinin isminin yanısıra kaç elemanı olduğu da tanımlanmalıdır. Çünkü C derleyicisi o dizi için bellekte eleman sayısı kadar yer ayıracaktır. Bu örnek de The C Programming Language adlı kaynak kitabında, sayfa 20'de yer almaktadır. Yalnız bu örnekte, rakamların yanısıra rakam olmayan karakterler de sayılmaktadır. Biz sadece rakam sayma işlemini inceleyeceğiz. main() /* rakam sayma programı */ {

int rakam|10|; forfi * *i) rakam |(i| - 0; while ((c getchar())! EOF) if (e> && c<-'9) 4 * rakam

printf (“rakamlar — *"); for * -i) rakam (i)

| örnekte görüldüğü gibi dizi 10 elemanlı olarak, int rakam[10]; şeklinde tanımlanmıştır. Hemen alttaki for işlemi ile tüm elemanlar sıfıra eşitlenmiştir. Bunun nedeni değer atılmamış değişkenlerin C'de tanımlanmamış olmasıdır. Programda ilk if ifadesinde mantıksal VE (AND) işlemi kullanılmıştır. C'de VE işlemi && ile gösterilmektedir.

if (c >= '0' && c <= '9') ifadesi girilen karakterin sıfır karakterine büyük eşit ve 9 karakterine küçük eşit olması şartı taşımaktadır. Bu örnekte karşılaşılan ilginç bir kullanım ise bir sayıdan karakter çıkarma işlemidir. Bu ifade,

++rakam[c-'0'] içinde yer alan ifadesidir. Bu ifadede dizi elemanları sayılarla ifade edilmektedir ve bu sayı pozitif tamsayıdır. Bu nedenle C girilen karakterin ASCII kodunu gösterdiğinden '0' da 0 karakterinin ASCII koduna çevrilmektedir. Bu fark ise 0 ile 9 arasında yeralmakta, bu da dizi elemanını göstermektedir.

Klavyeyle gezinmek için ← ve → tuşları.