51. 포인터 배열과 배열 포인터, 이중 포인터

다음 C 프로그램의 실행 결과를 쓰시오.

1#include <stdio.h>
2
3int main() {
4 int a[2][3] = {{1, 2, 3}, {4, 5, 6}};
5 int x = 7, y = 8, z = 9;
6 int *pa[3] = {&x, &y, &z};
7 int (*pr)[3] = a;
8 int **pp = pa + 2;
9 int s = 0;
10 for (int i = 0; i < 3; i++) {
11 s += *pa[i] * (i + 1);
12 }
13 *pa[1] = 20;
14 **pp += x;
15 pr++;
16 printf("%d %d %d\n", s, y, z);
17 printf("%d %d %d\n", (*pr)[0], pr[0][2], *(*(pr - 1) + 1));
18 return 0;
19}

해설을 먼저 보면 이후 정답 시 점수가 50%만 반영됩니다.