English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دروس أساسية بلغة C

تحكم في العملية بلغة C

الوظائف في لغة C

المسافات في لغة C

المراجع في لغة C

ال

مبادئ التركيز بلغة C

ملفات لغة C

C أخرى

دليل مرجع لغة C

المسافات كمعامل للوظائف

في هذا الدرس، ستعلم كيفية نقل المصفوفة (مصفوفة أحادية الأبعاد ومصفوفة متعددة الأبعاد) إلى الدوال في البرمجة بلغة C من خلال الأمثلة.

في لغة البرمجة C، يمكنك نقل المصفوفة بأكملها إلى الدالة. قبل أن نصل إلى هذا، دعنا نرى كيف نقل عناصر المصفوفة إلى الدالة.

نقل عنصر المصفوفة الفردية

نقل عناصر المصفوفة إلى الدالة يشبهنقل المتغيرات إلى الدالة

مثال1: نقل مصفوفة

#include <stdio.h>
void display(int age1, int age2)
{
    printf("%d\n", age1);
    printf("%d\n", age2);
}
int main()
{
    int ageArray[] = {2, 8, 4, 12};
    //نقل الثاني والثالث عناصر إلى display()
    display(ageArray[1], ageArray[2]); 
    return 0;
}

نتائج الإخراج

8
4

مثال 2: نقل المصفوفة إلى الدالة

//البرنامج يحسب مجموع عناصر المصفوفة من خلال نقلها إلى الدالة
#include <stdio.h>
float calculateSum(float age[]);
int main()
    float result, age[] = {23.4, 55, 22.6, 3, 40.5, 18};
    //إرسال مصفوفة age إلى calculateSum()
    result = calculateSum(age); 
    printf("النتيجة = %.2f", result);
    return 0;
}
float calculateSum(float age[]) {
  float sum = 0.0;
  لـ(int i = 0; i < 6; ++i)
		sum += age[i];
  }
  return sum;
}

نتائج الإخراج

النتيجة = 162.50

لنقل كامل المصفوفة إلى الدالة، قدم فقط اسم المصفوفة كمعامل.

result = calculateSum(age);

لكن لاحظ استخدام [] في تعريف الدالة.

float calculateSum(float age[]) {
... ..
}

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

إرسال مصفوفة متعددة الأبعاد إلى الدالة

لإرسال مصفوفة متعددة الأبعاد إلى الدالة، قم فقط بتقديم اسم المصفوفة إلى الدالة (مثل مصفوفة أحادية الأبعاد).

مثال 3: نقل مصفوفة ثنائية الأبعاد

#include <stdio.h>
void displayNumbers(int num[2][2]);
int main()
{
    int num[2][2];
    printf("ادخل 4 أرقام:\n");
    لـ(int i = 0; i < 2; ++i)
        لـ(int ج = 0; ج < 2; ++ج)
            scanf("%d", &num[i][j]);
    //إرسال مصفوفة متعددة الأبعاد إلى الدالة
    displayNumbers(num);
    return 0;
}
void displayNumbers(int num[2][2])
{
    printf("عرض:\n");
    لـ(int i = 0; i < 2; ++i) {
        لـ(int ج = 0; ج < 2; ++ج) {
           printf("%d\n", num[i][j]);
        }
    }
}

نتائج الإخراج

إدخال 4 أرقام:
2
3
4
5
عرض:
2
3
4
5

ملاحظة:في برمجة لغة C، يمكن نقل المسافات إلى الوظائف، ولكن لا يمكن إرجاع المسافات من الوظائف.