Bu yazıda, dizilerle çalışmayı öğreneceksiniz. Dizi öğelerini örneklerle birlikte bildirmeyi, başlatmayı ve erişmeyi öğreneceksiniz.
İçindekiler
C dilinde Diziler
Diziler nasıl bildirilir?
Dizi elemanlarına nasıl erişilir?
Bir dizi nasıl başlatılır?
Bir diziye elemanlar nasıl eklenir?
Bildirim sırasında diziyi başlat
Örnek: Diziler
Dizileri kullanırken dikkatli olun
Dizi nedir?
Dizi, tek bir türden sabit sayıda değer topluluğudur. Örneğin: 100 tamsayıyı sırayla saklamak istiyorsanız, bunun için bir dizi oluşturabilirsiniz.
int data[100];
Dizilerin boyutu ve türü bildirildikten sonra değiştirilemez.
Diziler iki türdendir:
Tek boyutlu diziler
Çok boyutlu diziler
Diziler nasıl bildirilir?
data_type array_name[array_size];
Örneğin :
float diziAd[5];
Burada, ondalıklı sayı tipine sahip ve büyüklüğü 5 olan bir diziAd dizisi oluşturduk. Anlamı, 5 tane ondalıklı sayı tutabilir.
Dizi elemanlarına nasıl erişilir?
Dizinin elemanlarına indekslerle (indices) erişebilirsiniz.
Yukarıdaki gibi bir dizi bildirdiğinizi varsayalım. Birinci eleman diziAd[0], ikinci eleman diziAd[1] ve benzeri şekilde devam eder.
Birkaç önemli not:
* Dizilerin ilk dizini 0’dır, 1 değil .
* Bir dizinin boyutu n ise, son elemana erişmek için (n-1) dizini kullanılır.
* [0] işaretinin başlangıç adresinin 2120d olduğunu varsayalım. Daha sonraki adres 2124d, sonraki 2128d, vb. Olacaktır. Bunun nedeni bir float ‘ın boyutu 4 bayttır.
Bir dizi nasıl başlatılır?
Bildirim sırasında bir dizi başlatmak mümkündür. Örneğin:
int diziAd[5] = {19, 10, 8, 17, 9};
Bildirim sırasında dizi başlatmak için başka bir yöntem:
int diziAd[] = {19, 10, 8, 17, 9};
Çıktısı :
diziAd[0] eşittir 19
diziAd[1] eşittir 10
diziAd[2] eşittir 8
diziAd[3] eşittir 17
diziAd[4] eşittir 9
Dizi elemanları nasıl eklenir ve yazdırılır?
int diziAd[5] = {19, 10, 8, 17, 9}
// dördüncü elemana farklı değer ekleyin
diziAd[3] = 9;
// kullanıcıdan alınan değeri üçüncü elemana eklemek
scanf("%d", &diziAd[2]);
// kullanıcıdan alınan değeri (i + 1) 'inci elemana eklemek
scanf("%d", &diziAd[i]);
// Bir dizinin ilk elemanını yazdır
printf("%d", diziAd[0]);
// Bir dizinin son elemanını yazdır
printf("%d", diziAd[i-1]);
Örnek: C Dizileri
// Dizileri kullanarak n kadar sayının ortalamasını bulma programı
#include <stdio.h>
int main()
{
int marks[10], i, n, sum = 0, average;
printf("n değerini girin: ");
scanf("%d", &n);
for(i=0; i<n; ++i)
{
printf("Gir sayi%d: ",i+1);
scanf("%d", &marks[i]);
sum += marks[i];
}
average = sum/n;
printf("Ortalama = %d", average);
return 0;
}
Çıktısı :
n değerini girin: 5
Gir sayi1: 45
Gir sayi2: 35
Gir sayi3: 38
Gir sayi4: 31
Gir sayi5: 49
Ortalama = 39
C dizileriyle çalışırken hatırlanması gereken önemli bir konu :
- 10 öğeli bir dizi bildirdiğinizi varsayalım,
int testArray[10];
Dizi üyelerini testArray [0] ‘dan testArray [9]’ a kadar kullanabilirsiniz.
Dizi öğelerine sınırlarının dışında erişmeye çalışırsanız (mesela testArray [12] diyelim), derleyici herhangi bir hata göstermeyebilir. Ancak, bu beklenmeyen çıktılara neden olabilir.
Daha fazla bilgi edinmek için bu örnekleri inceleyin:
C Dizileri Kullanarak Ortalama Hesaplama Programı
Bir Dizinin En Büyük Öğesini Bulmak için C Programı
#Arrays #Diziler