آشنایی با آرایه در ++C — راهنمای جامع (+ دانلود فیلم آموزش گام به گام)

۳۵۷۲ بازدید
آخرین به‌روزرسانی: ۱۲ مهر ۱۴۰۲
زمان مطالعه: ۲۴ دقیقه
آشنایی با آرایه در ++C — راهنمای جامع (+ دانلود فیلم آموزش گام به گام)

در این مقاله به آرایه در ++C می‌پردازیم. بدن ترتیب با روش اعلان، مقداردهی اولیه و دسترسی به عناصر آرایه در زبان برنامه‌نویسی ++C آشنا خواهیم شد. یکی از مهم‌ترین مشکلات در زمان برنامه‌نویسی، مدیریت داده‌های زیاد از یک نوع خاص است.

997696

فیلم آموزشی آشنایی با آرایه ها در ++C

دانلود ویدیو

برای مطالعه بخش قبلی این سری مطالب آموزشی روی لینک زیر کلیک کنید:

برای مثال موقعیتی را تصور کنید که پیمایشی روی 100 نفر اجرا کرده‌اید و باید سن آن‌ها را ذخیره کنید. برای حل این مسئله در ++C می‌توانید یک آرایه اعداد صحیح با 100 عنصر بسازید. آرایه مجموعه‌ای از داده‌هایی است که تعداد ثابتی از مقادیر از یک نوع نگهداری می‌کند. به مثال زیر توجه کنید:

1int age[100];

در مثال فوق آرایه age حداکثر 100 عنصر از نوع integer می‌گیرد. اندازه نوع آرایه‌ها پس از اعلان شدن قابل تغییر نیست.

شیوه اعلان آرایه در ++C

روش اعلان یک آرایه در زبان برنامه‌نویسی ++C به صورت زیر است:

1dataType arrayName[arraySize];

به مثال زیر توجه کنید:

1float mark[5];

در مثال فوق یک آرایه به نام mark از نوع عدد اعشاری و با اندازه 5 اعلان می‌شود، یعنی این آرایه می‌تواند 5 مقدار اعشاری در خود نگه‌داری کند.

عناصر یک آرایه و شیوه دسترسی به آن‌ها

با استفاده از عناصر یک آرایه می‌توان به عناصر آن دسترسی یافت.

فرض کنید یک آرایه به نام mark مانند فوق اعلان کرده‌اید. نخستین عنصر [mark[0 است، دومین عنصر [mark[1 و همین طور تا آخر اندیس‌گذاری می‌شوند.

 آرایه ++C

چند نکته کلیدی

  • توجه کنید که نخستین اندیس آرایه‌های ++C از صفر و نه یک آغاز می‌شود. در این مثال [mark[0 نخستین عنصر است.
  • اگر اندازه آرایه برابر با n باشد، برای دسترسی به آخرین عنصر باید از اندیس n-1 استفاده شود. در مثال فوق [mark[4 آخرین عنصر آرایه است.
  • فرض کنید آدرس آغازین [a[0 برابر با 2120d باشد. در این صورت آدرس بعدی [a[1 برابر با 2124d، آدرس [a[2 برابر با 2128d و همین طور تا آخر خواهد بود. دلیل این مسئله آن است که اندازه آرایه 4 بایت است.

مقداردهی اولیه آرایه در ++C

امکان مقداردهی اولیه یک آرایه در زمان اعلان آن وجود دارد. برای نمونه:

1int mark[5] = {19, 10, 8, 17, 9};

روش دیگر برای مقداردهی اولیه آرایه در زمان اعلان به صورت زیر است:

1int mark[] = {19, 10, 8, 17, 9};

 آرایه ++C

در مثال فوق:

  • [mark[0 برابر با 19 است.
  • [mark[1 برابر با 10 است.
  • [mark[2 برابر با 8 است.
  • [mark[3 برابر با 17 است.
  • [mark[4 برابر با 9 است.

درج و پرینت عناصر آرایه

1int mark[5] = {19, 10, 8, 17, 9}
2// change 4th element to 9
3mark[3] = 9;
4// take input from the user and insert in third element
5cin >> mark[2];
6// take input from the user and insert in (i+1)th element
7cin >> mark[i];
8// print first element of the array
9cout << mark[0];
10// print ith element of the array
11cout >> mark[i-1];

مثالی از آرایه ++C

در ادامه برنامه ++C را برای ذخیره و محاسبه مجموع 5 عدد وارد شده از سوی کاربر با استفاده از ارائه‌ها مشاهده می‌کنید.

1#include <iostream>
2using namespace std;
3int main() 
4{
5    int numbers[5], sum = 0;
6    cout << "Enter 5 numbers: ";
7    
8    //  Storing 5 number entered by user in an array
9    //  Finding the sum of numbers entered
10    for (int i = 0; i < 5; ++i) 
11    {
12        cin >> numbers[i];
13        sum += numbers[i];
14    }
15    
16    cout << "Sum = " << sum << endl;  
17    
18    return 0;
19}

خروجی

Enter 5 numbers: 3
4
5
4
2
Sum = 18

در ادامه مواردی ارائه شده‌اند که هنگام کار با آرایه‌ها در ++C باید به خاطر داشته باشید.

فرض کنید آرایه‌ای با 10 عنصر برای نمونه مانند زیر اعلان کرده‌اید:

1int testArray[10];

شما می‌توانید از عناصر آرایه از [testArray[0 تا [testArray[9استفاده کنید.

اگر تلاش کنید به عناصری خارج از کران اندیس آرایه دسترسی پیدا کنید، مثلاً [testArray[14 را وارد کنید؛ کامپایلر هیچ خطایی نمایش نخواهد داد. با این حال این کد ممکن است در زمان اجرا، خروجی غیرمنتظره (رفتار تعریف‌نشده)-ای نمایش دهد. برای مطالعه بخش بعدی اسن سریمطالی آموزسی روی لینک زیر کلیک کید:

اگر این مطلب برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

==

بر اساس رای ۱۱ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
programiz
نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *