글
(5)Repetitive
반복문
- 주어진 조건이 만족하면 반복하는 '제어문'
> 조건이 만족하지 않을때까지 반복
- 조건식에 들어가는 변수(i같은)는 '조건변수'
> 조건변수를 다루는게 매우 중요! (반복 횟수 등이 정해짐)
> 조건변수의 용도
1) 몇 번 반복할지, 반복만을 위한 용도
2) 반복+값의 사용을 위한 용도
1. for문
for( 초기식; 조건식; 증감식 ) // 3개의 식
{
수행문
}
초기식 : 최초 한 번만 수행
조건식 : 조건이 참(true)이면 수행문 수행
증감식 : 수행문 수행 후 증감식이 수행
- for문 수행 순서
1. 초기식 수행
2. 조건식 판별
3. 수행문 수행 (조건이 참일 때)
4. 증감식 수행
5. 조건식 판별부터 반복 (조건->수행->증감->조건->..)
- 3개의 식들은 각각 생략이 가능하며,
모두 생략한 경우 항상 참(true)으로 간주한다. (무한반복)
for( ; ; )
2. while문
while( 조건식 )
{
수행문
}
- if문과 구조가 같으나, 수행문이 끝난 후 조건식으로!
- while문 수행 순서
1. 조건식 판별
2. 수행문 수행
3. 조건식 판별부터 반복(조건->수행->조건->..)
3. do~while문
do
{
수행문
} while(조건식);
- do(해라~) 무조건 수행문을 1회 수행 후, 조건식을 판별
- do~while 수행 순서 : 수행->조건->수행->조건->..
- 조건식 뒤에 세미콜론(;)을 붙인다.
> if, for, while 에는 조건식 뒤에 세미콜론(;) 붙이지 않는다.
반복문 공통 : break, continue
break : 현재 진행 중인 반복문을 빠져나간다.
> switch~case, 반복문에서 사용
continue : 다음 수행문 코드를 진행하지 않고,
다음 식으로 '점프'한다.
> 반복문에서만 사용
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | #include <stdio.h> void main() { // 1. for문 int i = 0; // i라는 이름은 for문 사용할 때 쓰는 명칭 (index) // for문이 여러 개 사용된다면, 알파벳 순으로 사용 i,j,k,... // 초기식; 조건식; 증감식 for( i = 0; i < 5; i++ ) // i = 0,1,2,3,4일 때 수행, 5일 때 끝 { // 수행문 printf("for문! : %d\n", i); } // 반복 수행이 끝났을 때의 i의 값!! printf("i의 값 : %d\n", i); // 2. while문 i = 0; // 초기식 while( i < 5 ) // 조건식 { // 수행문 printf("while문! : %d\n", i); i++; // 증감식 // i -= 10000; // int 범위 초과 시 오류! (약 -21억~21억) } // 반복문은 조건식을 빠져나올 구멍이 있어야 한다!! // 3. do~while문 : 일단 1번 수행해야 할 때 do { printf("(1) 9를 입력하면 종료 : "); scanf("%d", &i); }while( i != 9 ); // i가 9가 아니면 만족 -> 수행 i = -1; // i를 임의의 값으로 저장해놓는다. (9가 아닌 값) while( i != 9 ) { printf("(2) 9를 입력하면 종료 : "); scanf("%d", &i); } while( 1 ) // 항상 만족하는 반복문 -> 무한반복 { printf("(3) 9를 입력하면 종료 : "); scanf("%d", &i); if( i == 9 ) { break; } } // 반복문은 서로 대체 가능 // 반복 횟수가 정해져있을 때 : for문 // 특정 조건일 때 : while문,do~while문 // 위와 같은 무한반복while문 + break; 를 사용하는 것이 편하다. // 빠져나올 조건이 복잡할 때 사용하면 좋다. } | cs |
'C > C언어 이론' 카테고리의 다른 글
(7)Array (0) | 2018.06.20 |
---|---|
(6)Function (0) | 2018.06.20 |
(4)Conditional (0) | 2018.06.20 |
(3)Operator (0) | 2018.06.20 |
(2)Data type (0) | 2018.06.19 |