* 다차원 배열
1차원
[열, 칸, column, field]
2차원
[행, 줄, row][칸]
3차원
[면][행][열]
--------------------
int idx;
int p[5]={11,22,33,44,55}; //1차원 배열
for(idx=0; idx<5; idx++)
{
printf("p[%d]=%d ",idx,p[idx]);
}
printf("\n");
int q[2][4]={
{10,20,30,40},
{50,60,70,80},
};
int a,b;
for(a=0; a<=1; a++)
{
for(b=0; b<=3; b++)
{
printf("%d ",q[a][b]);
}//칸
printf("\n");
}//열
int su[4][4]={
{2,5,3,0},
{4,8,9,0},
{6,8,7,0},
{0,0,0,0}
};
//출력결과
2 5 3 10
4 8 8 20
6 8 7 21
12 21 19
---------------
//가로행의 합
su[0][3]=su[0][0]+su[0][1]+su[0][2]
su[1][3]=su[1][0]+su[1][1]+su[1][2]
su[2][3]=su[2][0]+su[2][1]+su[2][2]
//세로행의 합
su[3][0]=su[0][0]+su[1][0]+su[2][0]
su[3][1]=su[0][1]+su[1][1]+su[2][1]
su[3][2]=su[0][2]+su[1][2]+su[2][2]
for(a=0; a<=2; a++)
{
for(b=0; b<=2; b++)
{
su[a][3]+=su[a][b];//가로행
su[3][a]+=su[b][a];//세로행
}
}
for(a=0; a<=3; a++)
{
for(b=0; b<=3; b++)
{
printf("%d ",su[a][b]);
}//칸
printf("\n");
}//열
-----------------------------------------------------
#include <stdio.h>
void main()
{
int idx;
int p[5]={11,22,33,44,55}; //1차원 배열
for(idx=0; idx<5; idx++)
{
printf("p[%d]=%d ",idx,p[idx]);
}
printf("\n");
int q[2][4]={
{10,20,30,40},
{50,60,70,80},
};
int a,b;
for(a=0; a<=1; a++)
{
for(b=0; b<=3; b++)
{
printf("%d ",q[a][b]);
}//칸
printf("\n");
}//열
int su[4][4]={
{2,5,3,0},
{4,8,9,0},
{6,8,7,0},
{0,0,0,0}
};
for(a=0; a<=2; a++)
{
for(b=0; b<=2; b++)
{
su[a][3]+=su[a][b];//가로행
su[3][a]+=su[b][a];//세로행
}
}
for(a=0; a<=3; a++)
{
for(b=0; b<=3; b++)
{
printf("%d ",su[a][b]);
}//칸
printf("\n");
}//열
}
'..열심히 공부하세.. > C 입문' 카테고리의 다른 글
[11] 함수 (0) | 2012.05.31 |
---|---|
[정렬 알고리즘] (0) | 2012.05.29 |
[요일구하는 프로그램] (0) | 2012.05.25 |
[09] 배열 Array (0) | 2012.05.25 |
[08] while문, do~while문 (0) | 2012.05.25 |