문제 설명
1줄에 정수 4개씩 3줄에 걸쳐 입력 받아 배열에 저장한다. 행과 열 단위의 합계를
인쇄한다.
예를 들어 아래와 같이 입력되면 다음과 같은 결과를 얻을 수 있다
4 3 1 7
7 8 6 2
9 5 2 6
그러면 출력은 첫째 줄에는 각 행의 합계를 공백으로 구분해서 출력하고 둘째 줄에는 각 열의 합계를 공백으로 구분해서 출력한다. 즉, 다음과 같이 출력하면 된다.
15 23 22
20 16 9 15
입력 설명
1줄에 정수 4개가 공백으로 구분되며 3줄에 걸쳐 입력 받는다. 단 정수는 양의 정수이다.
출력 설명
첫째 줄에는 행 단위 합계를 인쇄하고 두 번째 줄에는 열 단위 합계를 인쇄한다.
입력 예시
4 3 1 7
7 8 6 2
9 5 2 6
출력 예시
15 23 22
20 16 9 15
정답 코드
#include <stdio.h>
int arr[3 + 2][4 + 2];
void input(void)
{
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
scanf("%d", &arr[i][j]);
}
}
}
void solve(void)
{
int d;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
d = arr[i][j];
arr[i][4] += d;
arr[3][j] += d;
}
}
}
void output(void)
{
for (int i = 0; i < 3; i++)
{
printf("%d ", arr[i][4]);
}
printf("\n");
for (int j = 0; j < 4; j++)
{
printf("%d ", arr[3][j]);
}
}
void main(void)
{
input();
solve();
output();
}
메모
printf 내부의 \n 습관화 필요