못정함
C언어) 5장 선택문 (if문, switch ~ case문) 본문
<개요>
선택문 = 조건문
5-1장) if문 , if~else문, if~else if~else문
5-2장) if문 중첩, else 결합 문제, switch~case문
제어문 | 선택문 | if, switch~case |
반복문 | while, for, do~while | |
분기문 | break, continue, goto, return |
if (조건) {
실행문
}
-실행문이 한 문장일 때는(때만) 중괄호 생략가능하지만 그냥 나는 항상 중괄호 챙기는 걸로...
*주의) printf()를 중괄호 안에 넣어줘야한다.
<if~else문>
if (조건식) {
실행문1
}
else
{
실행문2
}
*else에는 조건을 사용하지 않음 (조건을 만족하지 않을 때 무조건 else 부분을 실행하도록)
-실행문이 한 문장일 때만 중괄호 생략이 가능하다
<if ~ else if ~ else문>
5.2장
<if문 중첩>
-어떤 조건을 검사하기 전에 선행조건이 있을 때 사용
if (조건식)
{
if (조건식)
{
실행문
}
else
{
실행문
}
}
-두 범위로 나누어 검사하면 더 효율적으로 검사할 수 있다. (divide and conquer)
<switch ~ case문>
- 여러 개의 상수 중 조건에 해당하는 하나를 골라 실행하는 것
-조건식으로 정수식만 사용해야함 (정수 / 상수 / 변수 / 수식 쓸거면 결괏값이 정수여야함)
-case에 사용하는 상수식 역시 정수만 가능. => 범위를 검사하는 경우에는 적합하지 않음
switch (조건식)
{
case 상수식1:
실행문1;
break;
case 상수식2:
실행문2;
break;
default:
실행문3;
break;
}
*break는 해당 블록을 탈출하는 데 사용. switch 블록을 벗어나는 것을 의미함.
*default는 상수식을 쓰지 않으며, 생략할 수도 있음. (생략할 경우 바로 블록을 벗어나므로 블록 내 어떠한 문장도 실행되지 않음). 사실 default는 항상 마지막에 실행되므로 위치가 중요한 것은 아님.
-case, default는 건너뛸 위치를 표시하는 레이블(label)의 역할을 함.
-break 생략: break를 생략하면 블록의 끝까지 모든 문장을 실행함.
case1에 해당 안되면 case2로 넘어가는데, case2를 만족하고 거기에 break가 없으면 case3, case4 등등등 의 실행문들을 모두 실행함
*도전실전예제) 계산기만들기. case '+', case '*' 가능. 왜냐하면 연산기호를 문자로 받아오면 그게 아스키코드....로 처리하는거라 정수라고 볼 수 있음....
'C언어 공부 > C언어 독학 (교재)' 카테고리의 다른 글
C언어) 7-1장: 함수의 작성과 사용 (0) | 2024.09.15 |
---|---|
C언어) 6장: 반복문 (0) | 2024.09.15 |
C언어) 4-2장 : 그 외 유용한 연산자 (0) | 2024.09.15 |
C언어) 4-1장: 산술, // 관계, 논리 연산자 (제어문에 사용) (0) | 2024.09.14 |
C언어) 3-2장: 데이터 입력 (0) | 2024.09.14 |