반복문을 제어
반복문을 제어하기 위해 continue문, break문, goto문을 사용합니다.
1. continue
continue문을 만나면 다시 반복문으로 돌아가 조건을 검사합니다.
더보기
예제 1) a가 5보다 작을 경우 해당하는 코드를 실행하는 반복문 예제 입니다.
#include<stdio.h>
int main(void){
int a;
for(a=0; a<5; a++){
printf("a의 값은 %d\n", a);
continue;
printf("CH.Security");
}
}
/* 출력결과
a의 값은 0
a의 값은 1
a의 값은 2
a의 값은 3
a의 값은 4
*/
continue문을 실행하게 되면 반복문의 조건식으로 이동합니다.
e.g.) 예제에서 continue문을 만나 CH.Security 문자열을 출력하는 코드를 생략하고 for문의 증감식에 의해 값이 증가된 for문의 조건식으로 돌아갑니다.
2. break
break문을 실행하면 반복문을 빠져 나오게 됩니다.
더보기
예제 1) 해당 문자열을 출력하며 a의 값을 1씩 증감하는 무한루프 반복문 예제 입니다.
#include <stdio.h>
int main(void){
int a = 0;
while(1){
printf("CH.Security %d\n",a);
a++;
if(a==3){
printf("a가 3일시 반복문 종료");
break;
}
}
}
/* 출력결과
CH.Security 0
CH.Security 1
CH.Security 2
a가 3일시 반복문 종료
*/
break문을 실행하게 되면 해당하는 반복문을 종료할 뿐만 아니라 무한루프를 방지할 수 있습니다.
e.g.) 예제에서 조건식에 의해 a의 값이 3일 경우 문자열을 출력하고 break문을 만나 반복문을 종료하게 됩니다.
3. goto
프로그램의 흐름을 해당하는 위치로 이동합니다.
더보기
예제 1) 1~3 사이의 값을 입력받아 프로그램 위치를 해당하는 값에 실행하는 예제 입니다.
#include<stdio.h>
int main(void){
int a;
printf("1~3 숫자를 입력하세요.");
scanf("%d", &a);
if(a==1)
goto x;
else if(a==2)
goto y;
else if(a==3)
goto z;
x:
printf("입력한 숫자는 1 입니다.");
goto end;
y:
printf("입력한 숫자는 2 입니다.");
goto end;
z:
printf("입력한 숫자는 3 입니다.");
goto end;
end :
return 0;
}
/* 출력결과
1 입력 시 : 입력한 숫자는 1 입니다.
2 입력 시 : 입력한 숫자는 2 입니다.
3 입력 시 : 입력한 숫자는 3 입니다.
*/
※ goto문은 프로그램의 자연스러운 흐름을 방해하기에 쓰이지 않습니다.
goto문은 switch문 처럼 해당하는 프로그램 위치부터 쭈욱 코드가 실행하게 되는데 goto문은 break문을 사용할 수 없으므로 함수를 종료시키는 변수를 선언하고 이를 이용해서 프로그램을 종료시킵니다.
'Coding > C' 카테고리의 다른 글
성적 계산기(if ~ else, switch) (2) | 2021.06.13 |
---|---|
구구단 출력하기 (while, for) (0) | 2021.06.12 |
분기문(if, if ~ else, switch) (0) | 2021.06.12 |
반복문(while, do ~ while, for) (0) | 2021.06.06 |
연산자 (0) | 2021.06.05 |