آموزش برنامه نویسی در زبانهای رایج مثل :asp و asp.net و php و html و C و C++ و javascript و visualBasic و delphi و . . .

سه شنبه 16 شهريور 1389 برنامه نویسی

آرایه های چند بعدی در برنامه نویسی C


در برنامه نویسی c - آرايه هاي چندبعدي

آرايه ها مي توانند داراي ابعاد بيشتري نيز باشند. در زبان C نيز مي توان يك آرايه چند بعدي را بصورت زير اعلان كرد:

<type> <var-name> [<size 1>][<size 2>]  …   [<size n>] ;

بعنوان مثال، اعلان زير يك آرايه دوبعدي را معرفي مي نمايد:

int A[5][8] ;

براي دسترسي به هر عنصر از اين آرايه بايد از دو علامت [] استفاده كرد. توجه كنيد كه انديس سطرها و ستونها هر دو از 0 آغاز مي گردند. بعنوان مثال:

int A[5][8] ;
A[3][1] = 24;

البته در مورد آرايه هاي با ابعاد بالاتر نيز به شكل مشابهي عمل مي گردد. بعنوان مثال به نحوه استفاده از يك آرايه سه بعدي در مثال زير دقت كنيد:

int B[5][8][6] ;
B[2][4][0] = 12;

برنامه 3) برنامه اي بنويسيد كه نمرات تعدادي دانشجو را براي 5 درس دريافت و آنها را بهمراه معدل دانشجو ذخيره نمايد، سپس براي هر دانشجو معدل وي را چاپ نمايد.

void main() {
const int maxStudent = 100;
float grades[maxStudent][5] ;
float average[maxStudent];
int i, j, n;
printf("enter student number:");
scanf("%d",&n);
for (i=0 ; i< n ; i++) {
printf("student no %d:\n",i+1);
sum = 0;
for (j= 0 ;j<5 ; j++) {
printf("enter grade : ");
scanf("%f", &grades[i][j]);
sum += grades[i][j] ;
}
average[i] = sum / 5 ;
}
for (i=0 ; i< n ; i++)
printf("average of student %d is %f \n",i+1, average[i]);
}

و نكته آخر اينكه مقداردهي اوليه به آرايه هاي چندبعدي امكان پذير است و بصورت زير انجام مي پذيرد:

int A[3][4] = { {12, 5, 3, 8} , {-3, 7, -9, 2}, {4, 22, 18, 6} };

يعني يك علامت {} براي كل مقداردهي قرار مي گيرد، سپس هر رديف از آرايه در داخل يك {} مجزا قرار مي گيرد. براي ابعاد بالاتر نيز به روش مشابهي عمل مي گردد. بعنوان مثال براي آرايه هاي سه بعدي داريم:

int A[2][3][4] = { { {12, 5, 3, 8} , {-3, 7, -9, 2}, {4, 22, 18, 6} } , { {8, 1, -3, 4} , {-2, 8, 11, 21} , {7, 3, -15, -8} } };

با آرزوی موفقیت برای شما

سعید ابریشمی

نوشته شده توسط :سعید ابریشمیتعداد دفعات خوانده شدن مقاله : 15086


نسخه ی قابل چاپ     ذخيره         ارسال برای دوستان       مقاله های مربوط به اين گروه



تمام مطالب اين سايت باذکر ماخذ برای عموم آزاد است