C programlama

C Dilinde Diziler

image_pdfimage_print

C dilinde diziler çok kullanışlıdır. Diziler, aynı isim ve farklı indis numarası ile verileri tutabildiğimiz değişkenlerdir. Aynı tür verilerle çalışırken büyük kolaylık sağlar. Diziyi kaç elemanlı tanımlamışsak, o kadar değişken tanımlamışız gibi düşünülebilir.

Dizileri normal bir değişken gibi tanımlarız. Önce tipini, ardından ismini, son olarak da isminin yanına köşeli parantez içinde eleman sayısını yazarız.Örnek olarak:

int dizi[10]; //10 elemanlı dizi tanımladık.
int dizi[10] = {0}; //10 elemanlı dizi tanımlayıp, tüm elemanlarını "0"a eşitledik.
int dizi[] = {0, 1, 2, 3, 4}; //Dizi tanımlarken eleman sayısını belirtmedik, fakat diziye 5 adet değer atadığımız için dizi otomatik olarak beş elemanlı tanımlandı.
Dizileri tanımlarken tüm elemanlarını “0”a eşitlemek faydalı olabilir. Bunu yapmadığımız zaman RAM’de, dizinin tanımlandığı bölgede hangi bilgi varsa, ona göre işlem yapılır. Özellikle dizilerle aritmetik işlem yapıyorsak, bu durum istenmeyen sonuçlara yol açabilir. Örneğin 5 elemanlı bir dizi tanımladık ve elemanlarını sıfıra eşitlemedik. 3 elemana veri giriş yaptık, 2 elemana hiç dokunmadık. Elemanların tümünü bir for döngüsüyle topladık. Dokunmadığımız elemanlarda o an hangi değer varsa, o değerler de toplama dahil olacaktır.

Dizilerle çalışırken unutulmaması gereken; indislerin “0”dan başladığıdır. Örneğin yukarıda 10 elemanlı bir dizi tanımladık. Ancak bu dizinin sonuncu elemanının indir numarası “9”dur. Eğer “10” indis numaralı elemana erişmeye çalışırsak, RAM’de, tanımlamış olduğumuz diziden bir sonraki bölüme erişiriz ki bu da bize alakasız bir sonuç döndürecektir.
Dizileri değişkenlere benzetmiştik. Kullanırken de aynen değişkenler gibi kullanılır, yanına köşeli parantez içinde indis numarası yazılır.

Bir dizi çok sayıda değişken barındırdığından, bunları birbirinden ayırdetmek için indis adı verilen bir bilgiye ihtiyaç vardır. C Programlama Dili’nde, bir dizi hangi tipte tanımlanmış olursa olsun başlangıç indisi her zaman 0’dır.

Bir dizinin bildirim işleminin genel biçimi söyledir:

Örneğin, 5 elemanlı, kütle verilerini bellekte tutmak için, kutle dizisi şöyle tanımlanabilir:

Bu dizinin elemanlarına bir değer atama işlemi şöyle yapılabilir:

Bildirim sırasında dizilerin eleman sayısı tamsayı türünden bir sabit ifadesiyle belirtilmesi zorunludur.

Bir diziye başlangıç değerleri aşağıdaki gibi kısa formda atanabilir:

Küme parantezlerinin sonlandırıcı ; karakteri ile bittiğine dikkat ediniz.

Bir dizinin uzunluğu belirtilmeden de başlangıç değeri atamak mümkündür.

Derleyici bu şekilde bir atama ile karşılaştığında, küme parantezi içindeki eleman sayısını hesaplar ve dizinin o uzunlukta açıldığını varsayar. Yukarıdaki örnekte, a dizisinin 4, v dizisinin 5 elemanlı olduğu varsayılır.

printf ve scanf fonksiyonları bir dizinin okunması ve yazdırılması için de kullanılır. Örneğin bir A dizisinin aşağıdaki gibi bildirildiğini varsayalım:

Bu dizinin elemanlarını klavyeden okumak için:

daha sonra bu değerlerini ekrana yazmak için:

C Programlama Dili dizideki sayıları küçükten büyüğe sıralama işlemini en basit şekilde yapacağını program kodu. Bu kod ile kullanıcının girdiği sayıları küçükten büyüğe göre tekrardan diziye kaydedip ekrana yazdırabilirsiniz.

0
1

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir