inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

다차원 배열과 문자열 배열

22강 17:33

해결된 질문

26

가보자고

작성한 질문수 20

0

image.png

출력값이 아래와 같을 줄 알았는데요
왜123 이렇게 3개씩 묶어서 출력된건지 이해가 안 가요ㅠ
1
2
3
4
5
6
7
8
9

python java c 정보처리기사 정보처리산업기사

답변 2

0

주말코딩

안녕하세요! 반복문 안의 printf를 보시면 띄어쓰기로 되어있습니다.

그 이야기는 3번의 반복은 개행이 아니라, 띄어쓰기로 묶인다는 것입니다.


3번의 반복이 끝나면 바로 그 다음 바깥의 for문의 다음 회차로 가는 것이 아니라

그 다음 블록인 printf("\n");를 실행해야합니다.


그렇기 때문에

1 2 3이 먼저 출력된 후, 아래 블록에 가서 개행문자가 출력되어서 한 줄이 완성됩니다.

그 다음의 4 5 6은 다음 줄부터 시작합니다.


이런 식의 반복으로 수행됩니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 가보자고님.

질문하신 코드에서 기대하신 ‘1 2 3’ 형태가 아닌 ‘123’, ‘456’, ‘789’로 출력된 이유에 대해 설명드리겠습니다. C 언어에서 printf 함수를 사용하여 배열의 요소를 출력할 때, 출력 형식 정리에 따라 결과가 달라질 수 있습니다. 특히 개행 문자(\n)를 사용하지 않으면 모든 숫자가 연속해서 출력됩니다.

이미지에서 보이는 대로 코드가 잘 작성되어 있고, 각 행 끝에서 개행을 넣지 않을 경우 연속으로 출력되게 됩니다. 즉, printf("%d", ...)로만 숫자를 출력하는 경우, 가로로 연이어 출력되는 것입니다. 반대로, 각 출력 사이에 개행 문자 \n이나 공백을 사용하면 각 숫자를 새 줄에 배치하거나, 원하는 형식으로 바꿀 수 있습니다.

아래는 형식을 맞춰서 결과를 얻는 코드 예시입니다:

#include <stdio.h>

int main() {
    int matrix[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };

    for(int i = 0; i < 3; i++) {
        for(int j = 0; j < 3; j++) {
            printf("%d ", matrix[i][j]); // 각 요소 뒤에 공백 추가
        }
        printf("\n"); // 행의 끝에 개행 추가
    }

    return 0;
}

이렇게 하면 각 열의 끝에 공백과 줄 바꿈을 추가하여 원하시는 출력 형식을 얻을 수 있습니다.

추가적으로 관련된 질문들을 통해 자세한 설명을 얻기를 원하시면, 다음의 스레드를 참고해 주세요:
- C언어 배열 출력 형식 따르기

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

자식 코드 내 super() 생략

0

11

2

출력질문

0

16

2

31강 4:06

0

18

2

파이썬 학습자료가 강의 자료와 다릅니다.

0

30

3

섹션 2 - 9강 강의자료 다운로드 문제

0

22

3

29강 3:09

0

19

2

28강 6:42

0

22

2

75강 26년 1회 코드 문제 해석 강의 질문 드립니다.

0

26

2

모의고사

0

30

1

17강 28:26

0

26

2

C언어 기출문제 변형에서 6번 문제입니다. 20:56

0

26

3

17강 22:38

0

24

2

16강 2:17

0

43

2

부모 및 자식 생성자 출력 관련

0

43

2

부모 및 자식 생성자 출력

0

38

2

9강 35분경 질문있습니다

0

39

2

11강 3:20

0

47

2

10강 11:42

0

46

2

9강 26:23

0

52

2

9강 23:46

0

39

2

코드 중간에 . 붙은건 뭐라고 봐야할까요?

0

58

2

설명중 단어 의미 해석 문제.

0

40

1

수강 섹션마다 옆에 자료 다운로드 버튼이 있는데. 다운받으면 무슨내용이 있는건가요?

0

36

1

SQL 집중학습

0

42

1