분명 용어 노트를 어디에다 뒀었는데... 저의 불찰로 인하여 아직까지 실종상태입니다... ;(
기본 미션을 정확히 지키지는 못하였지만.. 후에 프로그래밍 언어와 컴퓨터 구조를 더 구체적으로 배우고자.. 몇 가지 용어를 영어로도 외우고 있습니다..
해당 내용을 일부나마 적어보았씁니다..ㅎㅎ..
#include <stdio.h>
int main(void)
{
int age = 25, chest = 95;
char size;
if (age < 20)
{
if (chest >= 95) size = 'L';
else if (chest < 85) size = 'S';
else size = 'M';
}
else
{
if (chest >= 100) size = 'L';
else if (chest < 90) size = 'S';
else size = 'M';
}
printf("사이즈는 %c입니다.\n", size);
return 0;
}
조건에 따라 실행문을 달리하는 형식.
if + ( 조건식 ) + { 실행문 }
if, else if, else
실행문이 하나라면 중괄호로 묶지 않고 한 줄의 코드로 실행이 가능하지만, 두 줄 이상이라면 중괄호로 묶어 보기 편하게 만든다.
조건이 여러 개라면 if 를 여러 번 쓰는 것보다 if else 를 쓰는 편이 최적이다.
-> 논리적으로 순서를 짜야 함.
: 불필요한 연산을 줄여 효율성을 높일 수 있음.
: if문 중첩에서 else의 위치가 명확하지 않아 발생하는 코드 오류.
교재 p.143에 나온 중첩 if문을 예시로 보자.
7행의 if가 참이라면 실행할 문장은 9행의 if문 한 문장이 된다.
위에서 언급한대로, if문에서 실행할 코드가 한 문장이라면 굳이 중괄호를 쓰지 않아도 된다고 한 바 있다.
따라서 8행과 13행의 괄호를 제거해도 오류없이 실행될 것으로 보인다.
그러나 막상 중괄호를 제거하면?
14행의 else가 7행의 if문과 결합되지 않고, 내부 9행의 if문과 결합된다.
따라서 결론적으로, if~else 문에서 중괄호를 쓰는가 쓰지 않는가는 코드의 내용에 따라 달리 써야함을 알았다.
: 정수 조건식을 사용하여 각 조건(case)에 따라 실행문을 달리 함.
: 정수 조건식이 상수식과 일치하면 해당 case문을 실행함.
: case 문은 일반적으로 break( 사용 시 해당 블록을 벗어남 )를 포함함.
: break를 사용하지 않을 시 조건식이 상수식과 일치하는 case 문부터 마지막 case 문까지 차례대로 실행된다.
: 일정 조건을 만족하는 동안 같은 실행문을 반복.
: 조건식을 먼저 검사하고 조건식이 참인 동안 실행문을 반복.
: 조건식 대신 참 값인 1 (혹은 ;;) 을 대입하여 사용할 경우 무한 반복하므로, while문 안에 반드시 해당 반복문을 중단시킬 코드를 대입해야 한다.
: while문과 달리 처음부터 반복을 실행할 횟수를 결정할 수 있다.
- 초기식: 반복과 관련하여 제일 초기 조건을 설정
- 조건식: 초기식이 해당 조건식을 만족시킬 때까지를 목적으로 하여 종료 조건 설정
- 증감식: 초기식이 조건식이 될 때까지 단계적으로 값을 증가 혹은 감소하도록 설정
: 조건식을 먼저 확인하는 while, for문과 달리 일단 반복할 문장을 맨 처음에 한 번 실행시킨 후에 조건을 확인한다.
: 즉 실행문을 최소한 한 번은 실행한다.
: 반복문 안에서 반복을 즉시 끝낼 때 사용
: 중첩 반복문일 경우 해당 반복문들을 바로 탈출
: switch ~ case문의 경우 해당 switch ~ case문만 탈출
: 반복문의 일부를 건너 뜀
: 블록을 탈출하진 않고, 해당 반복문만.
정리가 잘 된 글이네요. 도움이 됐습니다.