Menu
Coddy logo textTech

Elemanlara Erişim

Coddy'nin C Journey'sinin Fundamentals bölümünün bir parçası — ders 54 / 63.

Diziler aynı türden birden fazla değeri depolar. Bir dizideki öğelere tek tek erişmek için dizin konumunu kullanırız.

C'de, dizi indeksleri 0'dan başlar. Bu, ilk elemanın 0. indekste, ikincinin 1. indekste olduğu ve bu şekilde devam ettiği anlamına gelir.

5 elemanlı bir tam sayı dizisi oluşturun:

int numbers[5] = {10, 20, 30, 40, 50};

İlk elemana erişin (indeks 0):

int firstElement = numbers[0];

Yukarıdaki kod yürütüldükten sonra, firstElement şunu içerir:

10

Üçüncü öğeye erişin (indeks 2):

int thirdElement = numbers[2];

Bu, 30 değerini thirdElement içinde saklar.

Dizi sınırlarının dışındaki bir öğeye erişmeye çalışmak (örneğimizdeki numbers[5] gibi), belirsiz davranışa yol açar ve programın çökmesine neden olabilir.

challenge icon

Görev

Kolay

Şu işlemleri gerçekleştiren getElement adında bir fonksiyon yazın:

  1. Parametre olarak bir tam sayı dizisi ve dizinin boyutunu alır
  2. Bir indeks parametresi alır
  3. Eğer indeks geçerliyse (dizi sınırları içerisindeyse), o indeksteki elemanı yazdırır
  4. Eğer indeks geçersizse (dizi sınırları dışındaysa), "Index out of bounds" yazdırır

Dizilerde indeksin 0 ile başladığını unutmayın, bu nedenle 6. eleman isteniyorsa array[5] ifadesine erişmeniz gerekir

Kopya kağıdı

Diziler aynı türden birden fazla değeri saklar. Dizi indeksleri 0'dan başlar.

Bir tam sayı dizisi oluşturun:

int numbers[5] = {10, 20, 30, 40, 50};

Köşeli parantez ve indeks kullanarak elemanlara erişin:

int firstElement = numbers[0];  // 10 değerini alır
int thirdElement = numbers[2];  // 30 değerini alır

Dizi sınırlarının dışındaki elemanlara erişmek belirsiz davranışlara yol açar ve çökmelere neden olabilir.

Kendin dene

#include <stdio.h>

void getElement(int arr[], int size, int index) {
    // Kodunuzu buraya yazın
}

int main() {
    int size, index;
    
    // Dizinin boyutunu oku
    scanf("%d", &size);
    
    int arr[size];
    
    // Dizi elemanlarını oku
    for(int i = 0; i < size; i++) {
        scanf("%d", &arr[i]);
    }
    
    // Erişilecek indeksi oku
    scanf("%d", &index);
    
    getElement(arr, size, index);
    
    return 0;
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Fundamentals bölümündeki tüm dersler