본문 바로가기

IT/C언어

C언어본색 연습문제 Part 2-2-5


1. 문제 

int array[2][3] = {1,2,3,4,5,6}을 선언하고, array[i] == *(array+i) 표현을 이용하여 2차원 배열 요소들의 주소와 값을 출력하는 프로그램을 작성하세요.



2. 결과 



3. 코드


#include <stdio.h>
int main()
{
int array[2][3] = { 1,2,3,4,5,6 };
int i, j;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
{
printf("%d ", array[i][j]);
}
printf("\n");
}
printf("\n");
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
{
printf("%d ", *(array[i] + j));
}
printf("\n");
}
printf("\n");
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
{
printf("%d ", *(*(array+i)+j));
}
printf("\n");
}
printf("\n");
}

4. 설명

공식 array[i] == *(array+i) 임을 기억하셔야합니다.

그렇다면 2차원 배열은 

대입해보면 이렇게도 적용이 가능합니다.

array[i][j] == *(*array[i]+j) == *(*(array+i)+j)










'IT > C언어' 카테고리의 다른 글

C언어본색 연습문제 Part2.3.2  (0) 2018.05.04
C언어본색 연습문제 Part2.3.1  (0) 2018.05.04
C 언어본색 연습문제 PART2-2-4  (1) 2018.05.03
C 언어본색 연습문제 PART2-2-3  (0) 2018.05.03
C 언어본색 연습문제 Part2-2-2  (0) 2018.05.03