Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

المصفوفات كمعاملات للدوال

جزء من قسم Fundamentals في رحلة C على Coddy — الدرس 58 من 63.

يمكن تمرير المصفوفات كوسائط للدوال في لغة C. عندما يتم تمرير مصفوفة إلى دالة، فإن ما يتم تمريره فعلياً هو عنوان الذاكرة للعنصر الأول.

قم بالتصريح عن مصفوفة ودالة تأخذها كمعامل:

void displayArray(int arr[], int size) {
    for(int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

أنشئ مصفوفة واستدعِ الدالة:

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

عندما تمرر مصفوفة إلى دالة، فإن التغييرات التي يتم إجراؤها على المصفوفة داخل الدالة ستؤثر على المصفوفة الأصلية:

void doubleValues(int arr[], int size) {
    for(int i = 0; i < size; i++) {
        arr[i] = arr[i] * 2;
    }
}

// استدعاء الدالة
doubleValues(numbers, 5);
// الآن تحتوي numbers على: {20, 40, 60, 80, 100}
challenge icon

التحدي

سهل

أنشئ دالة باسم sumArray تأخذ وسيطين:

  • مصفوفة أعداد صحيحة (arr).
  • عدد صحيح (size) يمثل حجم المصفوفة.

يجب أن تقوم الدالة بحساب وإرجاع مجموع كل العناصر في المصفوفة.

بعد ذلك، في الدالة main:

  1. اقرأ عدداً صحيحاً n (حجم المصفوفة).
  2. اقرأ n من الأعداد الصحيحة وقم بتخزينها في مصفوفة.
  3. استدعِ الدالة sumArray مع المصفوفة.
  4. اطبع المجموع بالتنسيق التالي: "Sum: X" (حيث X هو المجموع).

جرّب بنفسك

#include <stdio.h>

// اكتب دالة sumArray الخاصة بك هنا

int main() {
    int n;
    scanf("%d", &n);
    
    int arr[n];
    for(int i = 0; i < n; i++) {
        scanf("%d", &arr[i]);
    }
    
    // استدعِ دالة sumArray واطبع النتيجة
    
    return 0;
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals