프로그램 언어의 제어 구조
-순차적 제어 : 특별한 지정이 없는 한 위에서 아래로 수행되는 제어구조
-선택적 제어 : 주어진 조건에 따라 특정부분으로 수행을 옮기는 분기 제어구조
-반복적 제어 : 특정 부분을 일정한 횟수만큼 반복 수행하는 반복 제어구조
선택 제어문
-if문
1) 단순 if문(단순제어)
형식 1)
if(조건)
명령문 1;
명령문 2;
형식 2)
if(조건) {
명령문 1;
...
명령문 n;
}
-단순 if문의 조건에 따른 분기
ex)
// if문이 조건을 만족하지 않으므로 중괄호 밖의 명령문을 수행한다.
// 출력 : b=40
2) if ~ else문
if(조건)
명령문 1;
else
명령문 2;
-기능 : 주어진 조건이 참일 때는 명령문 1을, 거짓일 때는 명령문 2를 수행한다.
-if ~ else 문의 조건에 따른 분기
ex)
3) 다중 if ~ else문
if(조건 1)
if(조건 2)
명령문 1;
else
명령문 2;
else
명령문 3;
-기능 : 조건 1과 조건 2가 참일 때 명령문 1을, 조건 1이 참이고 조건 2가 거짓일 때는 명령문 2를, 조건 1이 거짓일 경우는 명령문 3을 수행한다.
-다중 if ~ else문의 조건에 따른 분기
ex)
10을 입력했을 때의 출력 값)
4) 다중 if ~ else if ~ else문
-기능 : 조건 1이 참이면 명령문 1을 수행하고, 거짓이면 조건 2를 검사하여 참이면 명령문 2를 수행하고, 거짓이면 조건 3을 검사하여 참이면 명령문 3을 수행하고, 거짓이면 명령문 4를 수행한다.
-다중 if ~ else if ~ else 문의 조건에 따른 분기
ex)
성적 80을 입력했을 때의 출력 값)
-switch ~ case문
-기능 : 주어진 값에 따라 여러 곳 중 한 곳으로 분기하여 실행
- switch ~ case 문의 처리 순서도
예시(break문 미사용))
// switch(n%5) : 입력된 수를 5로 나누어 그 나머지에 해당되는 경우로 분기
// case들 : 나머지 값에 해당되는 각 경우를 설정
출력)
// 나머지가 0이므로 case 0에 해당되는 경우만 실행되어야 하나 break가 없어서 모든 경우가 실행 됨.
break문 사용 예시)
출력)
-goto문(무조건 분기)
-기능 : 프로그램 수행 도중에 원하는 곳으로 제어를 무조건적으로 옮긴다.
ex)
// goto end; : 레이블 명 end로 무조건 실행을 옮김
출력)
-goto문이 사용될 수 없는 경우
// 레이블이 특정 문장 범위 안에 들어있을 경우(괄호 밖에서 괄호 안으로 들어갈 수 없다.)
// goto가 괄호 밖을 나가는 것은 가능하지만 레이블명의 괄호 안으로 들어갈 수 없다.
'방통대 > C프로그래밍' 카테고리의 다른 글
5-3 기타 제어문 (0) | 2024.03.18 |
---|---|
5-2 반복 제어문 (0) | 2024.03.18 |
4-9 연산자 우선순위 (0) | 2024.03.11 |
4-8 기타 연산자 (0) | 2024.03.11 |
4-7 비트 연산자 (0) | 2024.03.11 |