본문 바로가기

개발언어/C

| C언어 | for문 , 이중 for문

C언어에서의 반복문의 종류로 주로 for문을 사용합니다.

주로 C언어의 반복문은 for, while , do-while문이 있고, 
어떤 상황에 따라 반복을 할지 문법의 결정에 따라 쓰임세가 다릅니다. 

쉽게 말해서 __
for문은 반복횟수를 사용자가 맵핑을 해주고, 
while문은 조건에 따라 무조건적인 반복횟수를 결정할때에 쓰이며, 
do-while문은 조건을 먼저 검사할지 또는 나중에 검사할지에 결정하는 것 입니다.

for문을 수행하기 위한 조건은?

for문 사용조건

초기값을 0으로 시작하면, 조건식에 10번 까지 반복하고, 증감식은 0 에서부터 카운트업을 시킨다. 이렇게 반복된 for문을 printf함수를 사용하여 출력을 할때 "" 뒤에 i를 써준다.

결과값은 이렇다

아니?

0 - 10까지 출력하라고 했지만 0 - 9 까지만 출력이 되어 이상함을 느낄수 있다.

위의 결과문에서 0부터 9까지 나온이유는

0 1 2 3 4 5 6 7 8 9 = 0을 포함한 총10개라는 표현때문이다. 그래서 0-9까지 출력이 된것이다.
그래서 0-10까지 표현하기 위해선 아래와같이 써야한다.

for (int i = 0; i <= 10; i++) {
    printf("hello world! %d\n" ,i);
}

다른점은 조건식 에서 쓰이던 부등표시 ' < '가 ' <= '로 바뀌었다. 이렇게 하면
0에서부터 10까지표현할수 있다. !

=======================================================================================================

이중 for문 사용법

이중 for문이란 for문안에 또다른 for문을 수행하기 위한 것이다.
구구단을할때 printf함수를 사용하여 출력이 가능하지만 이는 노가다성이 높은 작업이기때문에 이중for문을 사용하여
이를 수고스러운것을 줄이기 위해 쓰인다.

첫번째 for문에서 조건을 작성후,
첫번째 for문안에 두번째 for문을 적는다.

이 말뜻은 첫번째 for문 2로 시작할 때 9가 될때까지 반복 출력
두번째 for문은 첫번째 for문이 문장을 한줄 출력시 두번째 for문이 반복출력 한다는 것이다.

아래의 코드는 구구단을 구현하기 위한 for문입니다. 참고하세요 !

for (int i = 2; i <= 9; i++) { // 카테고리의 카운트업
    printf("\n%d단 계산 \n",i);


    for (int j = 1; j <= 9; j++) { // 카테고리 내의 카운트업
        printf("%d x %d = %d\n",i,j, i*j);

    }
}

결과문은 이렇다...

세로식 구구단 출력

위의 결과문을 보면 %d단 계산 은 첫번째 for문에서 출력된 결과물이고 , 아래의 연산에 대한 반복은 두번째 for문에서 출력된 것이다. !

728x90