개발 이야기/C

[C 언어 기초 정리 03] if, else, for, while

혁진 2023. 9. 22. 17:42

C 프로그램은 절차적 프로그램(procedural program) 또는 명령형 프로그램(Imperative program)에 속한다. 즉, 

C 프로그램의 명령문은 처음부터 끝까지 순서대로 실행됩니다.

이런 명령문들은 모든 프로그래밍 언어에서 거의 공통적인 이름과 역할을 수행하기에 그 문법에 관해서만 간단히 짚고 넘어가려고 한다.

조건문

IF

int num = 3;  
if (num < 5)
{
printf("입력하신 수는 5보다 작습니다.\n");
}

if-else

if (조건식) 
{
    조건식의 결과가 참일 때 실행하고자 하는 명령문;
} 
else 
{
조건식의 결과가 거짓일 때 실행하고자 하는 명령문;
}

if-else if- if

int num = 7;  

if (num < 5)
{
    printf("입력하신 수는 5보다 작습니다.\n");

}
else if (num == 5)

{
    printf("입력하신 수는 5입니다.\n");
}

else
{
    printf("입력하신 수는 5보다 큽니다.\n");
}

삼항연산자 

// 조건식 ? 반환값1 : 반환값2
int num01 = 15;
int num02 = 8;
int result;  

result = (num01 > num02) ? num01 : num02;
printf("둘 중에 더 큰수는 %d입니다.\n", result);

Switch문
if문 보다 컴파일러의 처리속도가 빠르다는 장범이 있지만, 각 case로 int로 변환가능한 값만 받을 수 있다. 

int num = 2;  

switch (num)
{
    case 1:
        printf("입력하신 수는 1입니다.\n");
        break;

    case 2:
        printf("입력하신 수는 2입니다.\n");
        break;

    case 3:
        printf("입력하신 수는 3입니다.\n");
        break;

    case 4:
        printf("입력하신 수는 4입니다.\n");
        break;

    case 5:
        printf("입력하신 수는 5입니다.\n");
        break;
        
    default:
        printf("1부터 5까지의 수만 입력해 주세요!");
        break;
}

반복문 

While

int i = 0;
int num = 5;  

while (i < num)
{
    printf("while 문이 %d 번째 반복 수행중입니다.\n", i + 1);
    i++;
}
printf("while 문이 종료된 후 변수 i의 값은 %d입니다.\n", i);

do-while

int i = 0;
do 
{
    printf("do / while 문이 %d 번째 반복 수행중입니다.\n", i + 1);
    i++;
} while (i < 1);
printf("do / while 문이 종료된 후 변수 i의 값은 %d입니다.\n", i);

for문

int i;
int num = 7;  

for (i = 0; i < num; i++)
{
    printf("for 문이 %d 번째 반복 수행중입니다.\n", i + 1);
}

goto

goto label;

label:
 printf("go to is working")

코드가 복잡해질 수도 있고, 유지보수성이 떨어지기도 하여 goto보다 break와 return을 적절히 잘 사용하는 것이 더 권장된다.