21/12/30
1. if문
1) 기본 문법
- 조건이 참일 경우 실행문을 수행
- 조건이 거짓일 경우 if문을 빠져나온다.
2) else
1
2
3
4
5
6
| if ( 조건 ) {
실행문;
}
else {
실행문;
}
|
3) else if
1
2
3
4
5
6
7
8
| if ( 조건1 ) {
실행문1;
}
else if ( 조건2 ){
실행문2;
} else {
실행문3;
}
|
- 조건1 = 참 : 실행문1
- 조건1 = 거짓, 조건2 = 참 : 실행문2
- 조건1 = 거짓, 조건2 = 거짓 : 실행문3
4) 중첩 if문
- if문 안에 if문이 있는 경우
1
2
3
4
5
6
7
8
9
10
11
| if ( 조건1 ) {
if ( 조건2 ) {
실행문1;
}
else {
실행문2;
}
}
else {
실행문3;
}
|
- 조건1 = 참, 조건2 = 참 : 실행문1
- 조건1 = 참, 조건2 = 거짓 : 실행문2
- 조건1 = 거짓 : 실행문3
2. switch문
문법
1
2
3
4
5
6
7
8
| switch( n )
{
case value1 : 실행문1;
break;
case value2 : 실행문2;
break;
default : 실행문3;
}
|
- n = int 또는 char
- n의 결과에 따라 실행되는 case가 달라진다.
- n = value1 : 실행문1
- n = value2 : 실행문2
- default : if문의 else와 같음
break
- break 有
1
2
3
4
5
6
7
8
| switch( n )
{
case value1 : 실행문1;
break;
case value2 : 실행문2;
break;
default : 실행문3;
}
|
- n = value2 : 실행문2 » switch문 빠져나옴
break 無
1
2
3
4
5
6
| switch( n )
{
case value1 : 실행문1;
case value2 : 실행문2;
default : 실행문3;
}
|
- n = value2 : 실행문2, 실행문3 수행
3. while문
문법
1
2
3
4
| while ( 조건 )
{
실행문;
}
|
- 조건이 참일동안 실행문이 반복된다.
- ex)
1
2
3
4
5
6
7
8
9
10
| int i = 1;
int n = 0;
while (n < 10) // n = 10 >> while문 실행 x
{
i += 1;
n += 2;
}
printf("i = %d, n = %d", i, n);
|
- 수행 순서
- i = 2, n = 2
- i = 3, n = 4
- i = 4, n = 6
- i = 5, n = 8
- i = 6, n = 10
결과 : i = 6, n = 10
중첩 while
1
2
3
4
5
6
7
| while ( n )
{
while ( m )
{
실행문;
}
}
|
4. do - while문
- 문법
1
2
3
4
| do
{
실행문;
} while ( 조건 )
|
- 조건이 참일동안 실행문 수행
5. for문
문법
1
2
3
| for ( 초기식; 조건식; 증감식 ) {
실행문;
}
|
- 초기식
- 초기식을 기준으로 조건과 증감식의 결과가 나온다.
- 주로
int = 0;을 사용한다.
- 조건식
- 초기식의 반복 조건.
- 조건식이 거짓이 되면 for문 종료
- 증감식
- 반복할 때 마다 초기식이 증감한다.
++ 혹은 --을 쓴다
- ex)
1
2
3
| for (int i = 0; i < 10; i++) {
printf("%d, ", i);
}
|
결과 : 1, 2, 3, 4, 5, 6, 7, 8, 9,
중첩 for
1
2
3
4
5
6
7
| int i;
int j;
for (i = 0; i <=5; i++ ) { // i가 5를 넘으면 for문 실행 x
for (j = 0; j <=4; j++) {
printf("i = %d, j = %d\n", i, j);
}
}
|
결과
i = 0, j = 0
i = 0, j = 1
i = 0, j = 2
i = 0, j = 3
i = 0, j = 4
i = 1, j = 0
i = 1, j = 1
…
i = 5, j = 0
i = 5, j = 1
i = 5, j = 2
i = 5, j = 3
i = 5, j = 4
6. Continue
- 조건으로 다시 돌아간다.
- ex)
1
2
3
4
5
6
7
8
9
| int sum = 0;
for (int i=0; i<=6; i++) {
if (i % 2 == 0) {
continue; // 짝수일 경우 조건으로 돌아간다
}
sum += i; // sum = sum + i;
printf("%d번째 sum값 = %d\n", i+1, sum);
}
|
- 실행 순서
- i = 0 » if : T » i++
- i = 1 » if : F » sum += i; (sum=1), printf(), i++
- i = 2 » if : T » i++
- i = 3 » if : F » sum += i; (sum=4), printf(), i++
- i = 4 » if : T » i++
- i = 5 » if : F » sum += i; (sum=9), printf(), i++
- i = 6 » if : T » i++
- 결과
- 2번째 sum값 = 1
- 4번째 sum값 = 4
- 6번째 sum값 = 9
Comments powered by Disqus.