개념 한 쪽
사무자동화산업기사 제어문 — switch·GOTO·묵시적 제어·토큰
제어문 세트는 C 언어의 흐름 제어와 구조적 프로그래밍의 기본 구조를 함께 묻는다. break·continue·goto는 이동·중단, switch는 다중 분기이며, 구조적 프로그래밍은 순차·선택·반복 세 구조를 쓰고 GOTO를 배제한다.
이 개념을 문제로 확인하고 싶으면 이 개념 문제 10개 풀기 회원용
가입 없이 오늘의 10문제 바로 풀기 →
뜻
C 언어의 제어문은 흐름을 어떻게 바꾸는지로 구분한다. break는 반복이나 switch를 빠져나가고, continue는 다음 반복으로 건너뛰며, goto는 지정한 위치로 이동한다. switch는 여러 갈래 가운데 하나를 고르는 다중 분기 구조이므로 break·continue·goto와 성격이 다르다.
구조적 프로그래밍은 순차 구조, 선택 구조, 반복 구조의 세 가지 기본 구조를 쓴다. 분기 구조나 그물 구조는 이 세 구조에 포함되지 않는다. 구조적 프로그래밍은 GOTO문의 사용을 배제하고 IF, CASE, SWITCH 같은 구조적 제어문을 사용한다.
프로그래밍 언어의 구문 분석에는 촘스키가 분류한 문법 가운데 문맥 자유 문법인 Type 2가 쓰인다. Type 0은 무제한, Type 1은 문맥 의존, Type 3은 정규 문법이다.
C 언어의 출력 서술자도 함께 본다. %d는 10진 정수, %o는 8진 정수, %x는 16진 정수, %c는 문자, %s는 문자열이다. %d를 8진 정수라고 적으면 틀린다. 서로 다른 데이터 형으로 값을 바꿀 때는 캐스트 연산자를 쓴다. 산술·관계·논리 연산자는 계산과 비교, 조건 판단을 담당하므로 형 변환 연산자와 구분한다.
예제
출제 패턴은 네 가지다. ① C 제어문 — break·continue·goto와 성격이 다른 것은 다중 분기인 switch다. ② 구조적 프로그래밍 — 기본 구조는 순차·선택·반복이고, 분기 구조나 그물 구조는 해당하지 않으며 GOTO문은 배제된다. ③ 문법·서술자 — 구문 분석에는 문맥 자유 문법 Type 2를 쓰고, %d는 10진 정수이며 %o가 8진 정수, %x가 16진 정수다. ④ 형 변환 — 데이터 형을 바꾸는 연산자는 캐스트 연산자다.
자주 묻는 물음
- C 언어 제어문에서 switch는 왜 성격이 다른가요?
- break·continue·goto는 흐름을 중단하거나 다른 위치로 이동시키는 제어문입니다. switch는 여러 갈래 가운데 하나를 선택하는 다중 분기 구조이므로 성격이 다릅니다.
- 구조적 프로그래밍의 기본 구조는 무엇인가요?
- 순차 구조, 선택 구조, 반복 구조의 세 가지입니다. 분기 구조나 그물 구조는 포함되지 않습니다. 구조적 프로그래밍은 GOTO문을 배제하고 IF·CASE·SWITCH 같은 구조적 제어문을 사용합니다.
- C 언어 서술자와 형 변환은 어떻게 정리하나요?
- %d는 10진 정수, %o는 8진 정수, %x는 16진 정수, %c는 문자, %s는 문자열입니다. %d를 8진 정수라고 적으면 틀립니다. 서로 다른 데이터 형으로 바꿀 때는 캐스트 연산자를 사용합니다.
사무자동화산업기사 풀이 세트에서 이 개념의 문제 10개를 바로 풀어 보세요.