Menu
Coddy logo textTech

גישה לאיברים

חלק מהיחידה יסודות במסלול ה-C של Coddy. שיעור 54 מתוך 63.

מערכים מאחסנים כמה ערכים מאותו סוג. משתמשים במיקום האינדקס כדי לגשת לאיברים בודדים במערך.

ב-C, האינדקסים במערך מתחילים ב-0. פירוש הדבר שהאיבר הראשון נמצא באינדקס 0, השני באינדקס 1 וכן הלאה.

צור מערך של מספרים שלמים עם 5 איברים:

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

גישה לאיבר הראשון (אינדקס 0):

int firstElement = numbers[0];

לאחר הרצת הקוד שלמעלה, firstElement מכיל:

10

גש אל האיבר השלישי (אינדקס 2):

int thirdElement = numbers[2];

הערך 30 נשמר ב־thirdElement.

ניסיון לגשת לאיבר מחוץ לגבולות המערך (כמו numbers[5] בדוגמה שלנו) מוביל להתנהגות לא מוגדרת ועלול לגרום לקריסת התוכנית.

challenge icon

אתגר

קל

כתבו פונקציה בשם getElement ש:

  1. מקבלת מערך של מספרים שלמים ואת הגודל שלו כפרמטרים
  2. מקבלת פרמטר של אינדקס
  3. אם האינדקס תקף (בתוך גבולות המערך), היא מדפיסה את האיבר באינדקס הזה
  4. אם האינדקס אינו תקף (מחוץ לגבולות המערך), היא מדפיסה Index out of bounds

זכרו שהאינדקסים במערכים מתחילים ב־0, לכן אם רוצים את האיבר השישי, צריך לגשת אל array[5]

נסו בעצמכם

#include <stdio.h>

void getElement(int arr[], int size, int index) {
    // כתבו כאן את הקוד שלכם
}

int main() {
    int size, index;
    
    // קראו את גודל המערך
    scanf("%d", &size);
    
    int arr[size];
    
    // קראו את איברי המערך
    for(int i = 0; i < size; i++) {
        scanf("%d", &arr[i]);
    }
    
    // קראו את האינדקס שאליו רוצים לגשת
    scanf("%d", &index);
    
    getElement(arr, size, index);
    
    return 0;
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר C אונליין