25.06.12 학습개발일지

2025. 6. 12. 10:15·LMS 7/개발일지

1. C언어 문법(혼공C) / 선택문(if, switch ~ case)

1) if문

(1) 기본형태

선언 -> if

조건 -> ()

실행문 -> {}

#include<stdio.h>
int main(){
    int a = 20;
    int b = 0;

    if (a > 10)
    {
        b = a;
    }
    printf("a : %d, b : %d\n",a,b);

    return 0;
}

 

(2) 여러가지 사용형태

출력은 다 똑같이 나옴

    if (a > 10)
    {
        b = a;
    }
    
    if (a > 10){
        b = a;
    }
    
    if (a > 10)
        b = a;
        
    if (a > 10) b = a;

※ 주의사항

아래의 두 형태는 실행 문장이 한 문장일 때만 사용할 수 있고,

두 문장 이상이면 반드시 중괄호로 묶어야 함 !

 

2) switch ~ case문

더보기

(1) 기본형태

#include<stdio.h>
int main(){
    int rank = 2, m = 0;

    switch (rank) // switch 문 선언
    {
        case 1 : // case -> rank가 1인 경우 아래를 실행
            m = 300;
            break; // switch문 탈출
        case 2 : // case -> rank가 2인 경우 아래를 실행
            m = 200;
            break; // switch문 탈출
        case 3 : // case -> rank가 3인 경우 아래를 실행
            m = 100;
            break; // switch문 탈출
        default : // case와 rank가 일치하는 경우가 하나도 없다면 아래를 실행
            m = 10;
            break; // switch문 탈출
    }
    printf("m : %d\n", m);
    
    return 0;
}

 

(2) break 생략 여부(필요에 따라)

#include<stdio.h>
int main(){
    int rank = 2, m = 0;

    switch (rank)
    {
        case 1 :
            m = 300;
        case 2 : // rank가 2이므로 case가 2인 경우의 실행문장을 실행
            m = 200; 
        case 3 : // 위 case 2의 break이 없어서 case 3의 문장도 실행됨
            m = 100;
    }
    printf("m : %d\n", m);

    return 0;
}

 

2. C언어 문법(혼공C) / 반복문

1) while문

(1) 기본형태

선언 : while

조건 : ()

실행 : {}

#include<stdio.h>

int main(){
    int a = 1;
    
    while (a < 10)
    {
        a = a * 2;
    }
    printf("a : %d\n", a);

    return 0;
}

 

2) for문

(1) 기본형태

선언 : for

조건 : (시작식 ; 조건식 ; 증감식)

실행 : {}

#include<stdio.h>
int main()
{
    int a = 1;
    int i;

    for (i = 0; i < 3; i++)
    {
        a = a * 2;
    }

    printf("a : %d\n", a);

    return 0;
}

 

3) do ~ while 문

(1) 기본형태

선언 : do, while

실행 : {}

조건 : ()

#include<stdio.h>
int main()
{
    int a = 1;
    
    do // 아래 중괄호를 먼저 실행
    {
        a = a * 2;
    } while (a < 10); // 조건이 충족되면 do를 반복
    
    printf("a : %d\n",a);
    
    return 0;
}

 

4) 중첩 반복문

(1) 예제를 통해 알아보기

외부 for문은 총 3번 반복

내부 for문은 총 15번 반복(외부 for문 1번당 5번이므로)

for i(1) -> for j(5) -> printf("*") -> printf("\n") = *****

for i(2) -> for j(5) -> printf("*") -> printf("\n") = *****

for i(3) -> for j(5) -> printf("*") -> printf("\n") = *****
이 됨

#include<stdio.h>
int main()
{
    int i, j;

    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 5; j++)
        {
            printf("*");
        }
        printf("\n");
    }
    

    return 0;
}

 

(2) for문의 제어변수 사용할 때 주의점

#include<stdio.h>
int main()
{
    int i, j;

    for (i = 0; i < 3; i++)
    {
        for (i = 0; i < 5; i++)
        {
            printf("*");
        }
        printf("\n");
    }
    

    return 0;
}

이 코드는 위 코드의 j를 i로만 바꾼 것인데,

출력결과는 *****가 끝이다.

이유는 내부 for문이 5번 반복되면 i가 5가 되고, 외부 for문의 조건을 확인할 때 이미 범위가 종료되며 실행되지 않는 경우가 발생하기 때문임.

 

5) break 분기문

break은 자신을 포함하는 반복문 하나만을 벗어날 수 있다.

#include<stdio.h>
int main()
{
    int i;
    int sum = 0;


    for (i = 1; i <= 10; i++)
    {
        sum = sum + i;
        if (sum > 30) // sum이 30을 초과하는 경우
        {
            break; // for 반복문을 탈출한다
        }
    }
    printf("누적한 값 : %d\n",sum);
    printf("마지막으로 더한 값 : %d\n",i);

    return 0;
}

6) continue 분기문

#include<stdio.h>
int main()
{
    int i;
    int sum = 0;

    for (i = 1; i <= 100; i++)
    {
        if (i % 3 == 0) // i가 3의 배수면
        {
            continue; // continue 분기문을 실행, for문의 마지막 블록으로 이동함
        }
        sum = sum + i;
    } // for문 다시 반복
    
    printf("누적한 값 : %d\n",sum);
    printf("마지막으로 더한 값 : %d\n",i);

    return 0;
}

'LMS 7 > 개발일지' 카테고리의 다른 글

25.06.15 학습개발일지 / C언어  (0) 2025.07.22
25.06.13 학습개발일지 / C언어  (0) 2025.07.22
25.06.10  (0) 2025.06.10
25.06.09 개발일지 / C언어  (0) 2025.06.09
25.06.08 개발일지 / C언어 예습하기  (0) 2025.06.09
'LMS 7/개발일지' 카테고리의 다른 글
  • 25.06.15 학습개발일지 / C언어
  • 25.06.13 학습개발일지 / C언어
  • 25.06.10
  • 25.06.09 개발일지 / C언어
m_Dev
m_Dev
  • m_Dev
    m_Dev
    m_Dev
  • 전체
    오늘
    어제
    • 분류 전체보기
      • MAIN STUDY
        • 정보보안
        • 빅데이터
        • 정보처리
        • 컴퓨터 구조
        • 기타
      • JOB
        • Study
        • Project
      • LMS 7
        • 개발일지
      • FRAMEWORK
        • Qt
        • MFC
        • Winform
        • WPF
        • MAUI
      • NETWORK
        • Study
        • Assignment
      • PYTHON
        • Set
        • Study
        • Assignment
        • Project
      • C
        • Set
        • Study
        • Assignment
        • Project
      • C++
        • Set
        • Study
        • Assignment
        • Project
      • C#
        • Set
        • Study
        • Assignment
        • Project
      • DATABASE
        • MySQL
        • SQLite
      • IDE
        • VisualStudioCode
        • VisualStudio
        • Pycharm
        • Colab
      • 기타
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
m_Dev
25.06.12 학습개발일지
상단으로

티스토리툴바