제어문 : 조건 지정에 따라서 진행 순서 변경
while문
while ( number <= 10)
{
/* ture */
}
/* false */
실행 순서
- 조건 판단
- ture인 경우 { } 수행
- false인 경우 { } 빠져나옴
=> 조건이 거짓이면 한번도 수행하지 않는다.
do while문
do
/* 일단 수행 */
while ( 조건 )
{
/* ture */
}
/* false */
실행 순서
- { } 먼저 수행
- 조건 판단
- ture인 경우 { } 수행
- false인 경우 { } 빠져나옴
=> 조건이 거짓이라도 한번은 수행한다.
break문
: while문과 같은 가장 가까운 루프를 벗어나는 명령어
while (ture or 1)
{
sum=sum+number;
number++;
if(number>10)break;
}
printf("\n1+2+...+10=%d\n", sum)
goto문
: 프로그램 실행 중 현재 위치에서 원하는 다른 문장으로 건너뛰어 수행을 계속하기 위해 사용
: 유지보수 어렵고 거의 사용 안함
1~10까지 짝수 합계 : if문, for문
A type
int i = 0;
int SUM = 0;
do
{
i = i+2;
SUM = SUM+i;
} while (i < 10);
printf("%d", SUM); /* 30 */
B type
int i = 0;
int SUM = 0;
do
{
i = i+1;
if( i % 2 == 0)
SUM = SUM+i;
} while (i < 10);
printf("%d", SUM); /* 30 */
C type
int i = 0;
int even=0;
int odd=0;
for(int k=1; k>=10; k++)
{
if(k % 2 == 0)
evet += k;
else
odd += k;
}
printf("%d %d", even, odd); /* 30 25 */
다중 if 문
예시) 학점 출력 프로그램
- 조건 90점이상 A, 80점 이상 B, 70점이상 C, 60점 이상 D, 그외 F학점
int j = 75;
if( j >= 90){
printf("A");
}else if( j >= 80){
printf("B");
}else if( j >= 70){
printf("C");
}else if( j >= 60){
printf("D");
}else{
printf("F");
}
/* C */
switch ~ case문 : 다중 if문을 간략화
int j = 75;
switch( j / 10 )
{
case 10:
case 9:
printf("A");
break;
case 8:
printf("B");
break;
case 7:
printf("C");
break;
case 6:
printf("D");
break;
default:
printf("F");
break;
}
/* C */
continue문 : 다음 반복을 실행하는 명령어
1~10까지 홀수 합계
: 짝수인 경우 누적하지 않도록 break와 continue문 사용
int i = 0, odd = 0;
while (true) {
i++;
if (i > 10) {
break;
}
if (i % 2 == 0) {
continue;
}
odd += i;
}
printf("%d", odd);
1) while(ture) -> 무조건 반복
2) break; -> i > 10인 경우 while문 벗어남
3) continue; -> i가 짝수인 경우 odd+= i; 수행하지 않고, while문 반복
'정보처리산업기사 공부 메모 > 프로그래밍언어 활용' 카테고리의 다른 글
📚 C 배열과 문자열 (0) | 2023.05.02 |
---|---|
📚 C 입력 함수, 출력 함수( printf, scanf ) (0) | 2023.04.28 |
📚 데이터 타입과 변수 (0) | 2023.04.27 |
📚 프로그래밍 언어 개념, 정보표현단위 (0) | 2023.04.18 |
댓글