Programming/C Lang Lecture

[C언어 강좌]14강 : 반복문(while)

알 수 없는 사용자 2014. 8. 4. 18:31


Written By StableVer.

[C언어 강좌]14강 : 반복문(while)



목차

1. 반복문에 대한 간단한 설명

2. 반복문 사용해보기



1. 반복문에 대한 간단한 설명

여러분은 이제 switch문까지 배우게 되었습니다.

하지만 진짜 프로그래밍의 시작은 반복문이라 할 수 있습니다.

왜냐하면 연습작을 하나 만들때에도 반복문 없이는 귀찮아 지거나 아예 구현이 불가능한 문제도 발생할 수 있습니다.

반복문은, 말그대로 반복하는 역할을 맡고 있습니다.

이렇게 반복문은 매우 중요한 역할을 하고 있습니다.


2. 반복문 사용해보기

일단 반복문 없이 "C언어 강좌"를 10번 출력해 보겠습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<stdio.h>
 
int main(){
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    printf("C언어 강좌\n");
    return 0;
}

문제 없이 잘 출력 되기는 하지만, 10개인지 한번에 알아보기도 힘들고 10개만 있으면 다행이지만 100번을 출력할땐 참으로 소스가 더러워질 것입니다.

고로 반복문 while을 사용하는 방법을 알려드리겠습니다.

while(조건){

    명령

}

이렇게 한다면 영어단어 while의 뜻이 ~하는 동안 이라는 뜻과 마친가지로 조건이 참인 동안엔 명령을 수행하게 됩니다.

1
2
3
4
5
6
7
8
#include<stdio.h>
 
int main(){
    while(1){//참고로 참을 나타내는 숫자는 1입니다. 
        printf("C언어 강좌\n");
    }
    return 0;
}

그런데 이 코드를 컴파일하면....

출력이 무한반복되는 기괴한 일이 생깁니다!

이게 어떻게 된 일일까요?

이유는 while문의 조건 부분이 절대로 거짓으로 변하지 않기 때문입니다.

실제로 프로그램에서 일정 부분을 무한반복 시키고자 할때에는 이 방법을 사용합니다.

그런데 우리는 무한반복이 아닌 10번의 반복만을 원합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>
 
int main(){
    int i;
    i=0;
    printf("i는 처음에 %d입니다.\n",i);
    while(i!=10){//if에 조건을 넣을때처럼 넣습니다. 
        i++;//i++는 i=i+1과 같습니다.
        printf("C언어 강좌\n");
        printf("i는 %d\n",i);
    }
    return 0;
}

이제 이 소스를 컴파일해 봅시다.

i가 처음 대입된 0에서 점점 커지는 것을 확인할 수 있습니다.

이제 while문의 구조가 확실하게 이해 되셨을 것 입니다.

이번 강좌는 여기까지 입니다. 수고하셨습니다.


다음강좌

15강 : 반복문(for)


[C언어 강좌]14강 : 반복문(while)