C언어 이중 for문 활용하기!
안녕하세요 판타지코딩입니다!
오늘은 C언어에서 활용하는 반복문인 for문을 어떻게 활용하는지 알아보고, 이중 for문을 활용하는 방법을 공부해 보겠습니다!
1. for문
이중 for문을 공부하기에 앞서, for문의 기본적인 문법을 공부하고 가겠습니다.
for(int i=0; i<3; i++)
{
printf("%d ", i);
}
이 코드는 0부터 2까지 순서대로 한 개씩 출력합니다. for문의 오른쪽을 보면 int i=0이라는 조건이 있습니다. i의 값이 0부터 증가하면서 지정한 범위까지 반복하게 됩니다. 다음을 i<3이라는 조건이 있으므로 i의 범위가 0부터 2까지인 것을 알 수 있습니다. 마지막으로 i++은 i가 1씩 증가한다는 것을 의미합니다. 그러므로 i는 0부터 2까지 1씩 증가하게 됩니다. i가 0일 때 printf문 실행, 1일 때 실행, 2일 때 실행 이렇게 3번을 반복하게 됩니다. 출력 결과는 아래와 같습니다.
0 1 2
참고로 printf문에서 "%d "처럼 작성했기 때문에 %d 뒤에 있는 공백으로 인해 0 1 2 처럼 한 칸씩 띄우고 출력된 것입니다!
2. 이중 for문
for문의 문법을 공부했으니 이번에는 이중 for문을 작성해 보겠습니다. 이중 for문은 for문 내에 for문이 들어있는 형태입니다.
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
printf("i : %d, j : %d\n", i, j);
}
}
가장 밖에있는 for문은 i가 0부터 2까지 1씩 증가합니다. 그리고 내부에 있는 for문은 j가 0부터 2까지 1씩 증가합니다. 그러므로 i가 0일 때 내부에 있는 for문의 모든 반복을 실행하고, i가 1일 때 내부의 for문을 실행, 마지막으로 i가 2일 때 내부의 모든 반복문을 실행합니다. 이러한 특징으로 보면 이중 for문은 순서쌍을 생성할 때 효과적으로 활용할 수 있습니다!
i : 0, j : 0
i : 0, j : 1
i : 0, j : 2
i : 1, j : 0
i : 1, j : 1
i : 1, j : 2
i : 2, j : 0
i : 2, j : 1
i : 2, j : 2
그럼 오늘은 for문의 문법을 공부하고, 이중 for문을 활용하는 방법을 알아보았습니다. 이중 for문의 특징을 고려해서 코드를 작성하시면 같은 코드가 반복할 경우 더 짧게 작성하실 수 있을 것입니다.
감사합니다!