Fonksiyon Argümanı Olarak Diziler
Coddy'nin C Journey'sinin Temeller bölümünün bir parçası. Ders 58 / 63.
Diziler, C'de fonksiyonlara argüman olarak aktarılabilir. Bir dizi bir fonksiyona aktarıldığında, aslında aktarılan şey ilk elemanın bellek adresidir.
Bir dizi ve bu diziyi argüman olarak alan bir fonksiyon tanımlayın:
void displayArray(int arr[], int size) {
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}Bir dizi oluşturun ve fonksiyonu çağırın:
int numbers[5] = {10, 20, 30, 40, 50};
displayArray(numbers, 5);Bir diziyi bir fonksiyona geçirdiğinizde, fonksiyon içinde dizide yapılan değişiklikler orijinal diziyi etkileyecektir:
void doubleValues(int arr[], int size) {
for(int i = 0; i < size; i++) {
arr[i] = arr[i] * 2;
}
}
// Fonksiyonu çağır
doubleValues(numbers, 5);
// Artık numbers şunları içerir: {20, 40, 60, 80, 100}Görev
KolaysumArray adlı, iki bağımsız değişken alan bir işlev oluşturun:
- Tam sayı dizisi (arr).
- Dizinin boyutunu temsil eden bir tam sayı (size).
İşlev, dizideki tüm elemanların toplamını hesaplamalı ve döndürmelidir.
Ardından, ana işlevde:
- Bir tam sayı olan n'yi (dizinin boyutu) okuyun.
- n adet tam sayı okuyun ve bunları bir dizide saklayın.
- Diziyle birlikte sumArray işlevini çağırın.
- Toplamı şu biçimde yazdırın: "Sum: X" (X toplamdır).
Kendin dene
#include <stdio.h>
// sumArray fonksiyonunuzu buraya yazın
int main() {
int n;
scanf("%d", &n);
int arr[n];
for(int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// sumArray fonksiyonunu çağırın ve sonucu yazdırın
return 0;
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
2Değişkenler
Veri TürleriTamsayıOndalık - DoubleKarakterlerBoolean'larSabitlerprintf TemelleriDeğişken Adlandırma KurallarıTür Dönüştürme 1. BölümTür Dönüştürme 2. BölümTekrar Mücadelesi5Girdi ve Çıktı
Biçim Belirleyicileriscanf TemelleriTekrar Mücadelesi #1Girdi DoğrulamaTekrar Mücadelesi #28Diziler
Dizileri TanımlamaÖğelere ErişmeÖğeleri DeğiştirmeÇok Boyutlu DizilerTekrar Meydan Okuması #1Fonksiyon Argümanı Olarak DizilerDizi AlgoritmalarıTekrar Meydan Okuması #23Operatörler
Aritmetik OperatörlerModül OperatörüArtırma/AzaltmaAtama OperatörleriKarşılaştırma OperatörleriMantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Mantıksal Operatörler Bölüm 3Tekrar MücadelesiKendi başına pratik yap: Online C derleyicisi