خانه / دوره آموزش مقدماتی C و ++C / قسمت نوزدهم آموزش C – ارزش دهی اولیه به آرایه ها

قسمت نوزدهم آموزش C – ارزش دهی اولیه به آرایه ها

گاهی ممکن است در هنگام تعریف آرایه ها خواسته باشیم مقادیری را نیز به آنها نسبت بدهیم . به این مقادیر ارزش های اولیه آرایه می گوییم . باید توجه داشت که فقط آرایه های دارای کلاس های حافظه static و extern می توانند مقادیر اولیه را بپذیرند . برای ارزش دهی اولیه به آرایه ها از روش کلی زیر می توان استفاده کرد :

{مقادیر}=[طول بعدnام][..][طول بعد دوم ][طول بعداول] <کلاس حافظه><نوع><اسم آرایه>

در روش کلی فوق ، کلاس حافظه ، یکی از کلاس های static و یا extern است و مقادیر که در داخل {} قرار می گیرند به ترتیب به عناصر آرایه نسبت داده می شوند.
یعنی اولین مقدار به اولین عنصر ، دومین مقدار به دومین عنصر و n امین مقدار به n امین عنصر آرایه نسبت داده می شوند .

در مورد ارزش دهی اولیه به آرایه ها ، باید دو نکته زیر را در نظر گرفت :

۱- اگر طول آرایه مشخص شود و تعداد مقادیری که به آرایه نسبت داده می شوند کمتر از تعداد عناصر آرایه باشند ، بقیه عناصر صفر فرض خواهند شد .

۲ – اگر طول آرایه مشخص نشود ، به تعداد مقادیری که به آرایه نسبت داده می شوند ، منظور خواهد شد .

مثال ۱ : نمونه ای از ارزش دهی اولیه به آرایه های یک بعدی .

#include &lt;stdio.h&gt;<br />
#include &lt;conio.h&gt;<br />
void main()<br />
{<br />
int i ;<br />
static int array[5]={10,5,15,20,25};<br />
static int table[]={5,6,8,9,11} ;<br />
static int mix[5]={0} ;<br />
printf(&quot;\n\t the result of&quot;);<br />
printf(&quot;operation is:\n\n\t&quot;);<br />
for(i=0 ; i&lt;4 ; i++)<br />
{<br />
mix[i]=array[i]+table[i] ;<br />
printf(&quot;%d\t&quot;,mix[i] );<br />
}<br />
printf(&quot;%d\t&quot;,mix[4] );<br />
getch();<br />
}

خروجی برنامه مثال ۱ :

:the result of operation is
۱۵ ۱۱ ۲۳ ۲۹ ۰

در مثال ۱ اولین دستور ، آرایه ای از نوع صحیح با کلاس حافظه static را تعریف می کند که طول آن ۵ بوده و مقادیر ۲۵ ، ۲۰ ، ۱۵، ۵ و ۱۰ را به عناصر آن نسبت
می دهد . دومین دستور ، آرایه ای بنام table را با طول نامشخص تعریف می کند و پنج مقدار ۵، ۶، ۸، ۹ و۱۱ را به آن نسبت می دهد ، لذا کامپایلر طول این را ۵ فرض خواهد کرد . سومین دستور آرایه ای بنام mix را با طول ۵ تعریف می کند و به کلیه عناصر آن مقدار صفر را نسبت می دهد . برای ارزش دهی اولیه آرایه دو بعدی و یا چند بعدی به دو روش می توان عمل کرد . این دو روش با ذکر مثالی تشریح می شود .

مثال ۲ : دستوراتی که به دو روش ، آرایه دو بعدی را ارزش اولیه می دهد.

static int array[2][3]={1,2,3,4,5,6} ;<br />
static int table[2][3]={3,4} ;<br />
static int mix[2][3]={{1,2,3},{4,5,6}};

اولین دستور، آرایه دو بعدی به ابعاد۲ * ۳ را تعریف کرده و مقادیر ۱، ۲ و ۳ به سطر اول و مقادیر ۴، ۵ و ۶و به سطر دوم نسبت داده می شوند . دومین دستور مثال ۲ آرایه ای دو بعدی با ابعاد ۲ * ۳ را تعریف می کند و دو مقدار۳ و ۴ را به آن نسبت می دهد که ۳ در محل [table[1][1 و۴ در محل [table[1][2 قرار می گیرد و بقیه عناصر آن صفر خواهند بود . دستور سوم روش دیگری برای دستور اول است .

نقد و بررسی

User Rating: Be the first one !

درباره ی آریـان پــور

سلام . آریــان پور هستم . از نویسندگان میکروپـدیا .. علاقه مــند به برنامه نویسی و طراحی وب و شبکه ! دیدگاه ها و نظرات شما دوستان بررسی میشه و باعث دلگرمـی برای نوشتن مطالب بهتر و به روزتر . در تماس باشید با : aryanpour [at] micropedia [dot] ir با مـا همراه باشید ..

همچنین ببینید

قسمت بیست و چهارم آموزش C – عملگرهای اشاره گر

این جلسه بسیار ساده و کوتاه خواهد بود. دو عملگر در مورد اشاره گرها مورد …

دیدگاهتان را بنویسید

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

پاسخ عبارت زیر را وارد کنید: *