ارجاع به عنصر آرایه
بیشتر سودمندی آرایه ها از این واقعیت ناشی می شود که عناصر آن به صورت جداگانه قابل دسترسی هستند.
راه برای انجام این کار استفاده از یک شاخص برای شماره گذاری عناصر است.
به یاد داشته باشید!
شماره گذاری آرایه ها در C از صفر شروع می شود.
(این امر اجباری است &mdash؛ باید از ابتدا شروع کنید. یادآوری این نکته به ویژه مهم است)
نمونه هایی از دسترسی به آرایه A:
<پیش>
x = (A[3] + 5)*A[1]; // مقادیر A[3] و A[1] را بخوانید
A[0] = x + 6; // مقدار جدید را به A[0] بنویسید
بیایید برنامه کار با عناصر آرایه را تجزیه و تحلیل کنیم.
<پیش>
#include <iostream>
با استفاده از namespace std.
main()
{
int i=1، A[5];
A[0] = 23; //به هر یک از 5 عنصر آرایه (شاخص های 0 تا 4)
A[1] = 12; // یک مقدار خاص بنویسید
A[2] = 7;
A[3] = 43;
A[4] = 51;
A[2] = A[i] + 2*A[i-1] + A[2*i]; //مقدار عنصر را با شاخص 2 به نتیجه عبارت تغییر دهید
//زیرا i=1، سپس مقدار متغیر i را با عبارتی که بدست می آوریم جایگزین می کنیم
//عبارت بعدی A[2] = A[i] + 2*A[0] + A[2];
cout << A[2]+A[4]؛
}
در نتیجه اجرای این برنامه مقدار عنصر آرایه با اندیس 2 برابر با
116 بر روی صفحه ظاهر می شود همانطور که از مثال مشاهده می کنید، ما می توانیم به هر عنصری از آرایه. و همچنین تعداد مورد نیاز عنصر را با استفاده از فرمول های مختلف محاسبه کنید (مثلاً مانند برنامه A[i-1] یا A[2*i]، در این موارد، شاخص های عناصر محاسبه می شود و بستگی به مقدار i.)
بیایید به یک برنامه نمونه نگاه کنیم
<پیش>
#include<iostream>
با استفاده از namespace std.
main()
{
const int N = 5;
int A[N];
x = 1;
cout << A[x-3]; //ارجاع به عنصر
A[-2]
A[x+4]=A[x]+A[2*(x+1)]؛ //پس از جایگزینی x به عبارات و محاسبات، خط زیر را دریافت می کنیم:
A[5] = A[1]+A[ 4]؛
...
}
زیرا آرایه با 5 عنصر اعلام شده است، به این معنی که عناصر از 0 تا 4 شماره گذاری می شوند. می بینیم که برنامه به عناصر غیر موجود دسترسی پیدا می کند:
A[-2] و
A[5]
به نظر می رسد که برنامه از مرزهای آرایه فراتر رفته است
آرایه خارج از محدوده دسترسی به عنصری با شاخصی است که در آرایه وجود ندارد.
در چنین مواردی، برنامهها معمولاً با
خطای زمان اجرا از کار میافتند.
بیایید سعی کنیم خودمان با عناصر آرایه کار کنیم.
کار را کامل کنید