뇌를 자극하는 C 프로그래밍 질의응답 게시판입니다.
2017-01-20
by 기나규
1784
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#include <stdio.h>
#include <stdlib.h>
int main() {
int *ap[3], *bp[3], *cp[3]; // 행렬의 각 행을 연결할 포인터배열
int i, j;
for (i = 0; i < 3; i++) { // 3개의 2차원배열을 동적으로 만든다.
ap[i] = (int *)malloc(4 * sizeof(int));
bp[i] = (int *)malloc(4 * sizeof(int));
cp[i] = (int *)malloc(4 * sizeof(int));
}
for (i = 0; i < 3; i++) { // 2개의 행렬에 값을 초기화하며
for (j = 0; j < 4; j++) { // 각 요소의 합을 3번쨰 행렬에 저장한다.
ap[i][j] = (i * 4 + j * 1) + 1; // 1~12 초기화
bp[i][j] = 12 - (i * 4 + j); // 12~1 초기화
cp[i][j] = ap[i][j] + bp[i][j]; // ap, bp 각 배열요소 합
}
}
for (i = 0; i < 3; i++) { // cp 행렬의 값을 출력한다.
for (j = 0; j < 4; j++) {
printf("%5d", cp[i][j]);
}
printf("
");
}
}
|
cs |
18번줄에