[실기] 6단원: 프로그래밍 언어 활용 - 연산자, 조건문, 반복문

이하얀·2024년 3월 7일
0

📥 정보처리기사

목록 보기
11/13

CH2. C언어(계속)

6️⃣ 연산자

⭐⭐연산자 우선순위⭐⭐ [2021년 3회]

  1. 증감연산자
    x++, x--
  2. 산술 연산자
    *, /, %, +, -
  3. 시프트 연산자
    <<, >>
  4. 관계 연산자
    <, <=, >, >=, ==, !=
  5. 비트 연산자
    ~, &, ^, |
  6. 논리 연산자
    !, &&, ||
  7. 삼항 연산자
    (조건식)?a:b
  8. 대입 연산자
    =, +=, -=, *=, /=, %=

연산자 상세

  • ⭐증감 연산자(Increment & Decrement Operartor)⭐ [2021년 3회]

    종류설명
    ++x변수의 값을 1 증가시킨 후에 해당 변수를 사용하는 연산자
    x++변수를 사용한 후에 변수의 값을 1 증가시키는 연산자
    --x변수의 값을 1 감소시킨 후에 해당 변수를 사용하는 연산자
    x--변수를 사용한 후에 변수의 값을 1 감소시키는 연산자

  • 산술 연산자

    종류설명
    +양쪽의 값을 더하는 연산자
    -왼쪽 값에서 오른쪽 값을 빼는 연산자
    *두 개의 값을 곱하는 연산자
    /왼쪽 값을 오른쪽 값으로 나누는 연산자
    %왼쪽 값을 오른쪽 값으로 나눈 나머지를 계산하는 연산자(정수끼리만 가능)

  • ⭐시프트 연산자(Shift Operator)⭐ [2021년 2회]

    종류설명
    <<왼쪽 값을 오른쪽 값만큼 비트를 왼쪽으로 이동하는 연산자
    >>왼쪽 값에 오른쪽 값만큼의 부호 비트를 채우면서 오른쪽으로 이동하는 연산자


  • ⭐관계 연산자(Relation Operator)⭐ [2021년 3회]

    종류설명
    >왼쪽에 있는 값이 오른쪽에 있는 값보다 크면 참을 반환, 그렇지 않으면 거짓 반환
    <왼쪽에 있는 값이 오른쪽에 있는 값보다 작으면 참을 반환, 그렇지 않으면 거짓 반환
    >=왼쪽에 있는 값이 오른쪽에 있는 값보다 크거나 같으면 참 반환, 그렇지 않으면 거짓 반환
    <=왼쪽에 있는 값이 오른쪽에 있는 값보다 작거나 같으면 참 반환, 그렇지 않으면 거짓 반환
    ==왼쪽에 있는 값이 오른쪽에 있는 값과 같으면 참 반환, 그렇지 않으면 거짓 반환
    !=왼쪽에 있는 값이 오른쪽에 있는 값과 다르면 참 반환, 그렇지 않으면 거짓 반환

  • 비트 연산자(Bit Operator)

    종류설명
    &AND 연산자
    ^XOR 연산자
    ~NOT 연산자(모두 반전)

    *** XOR


  • 논리 연산자(Logic Operator)

    종류설명
    &&AND 연산자
    !NOT 연산자

  • 삼항 연산자(Ternary Operator)
    조건식 ? 참일때 값 : 거짓일때 값;

  • ⭐대입 연산자(Assignment Operator)⭐ [2021년 3회]

    종류설명
    =왼쪽에 있는 변수에 오른쪽 값 대입
    +=왼쪽의 변수에 오른쪽 값 더한 후, 그 결과 값을 왼쪽 변수에 대입
    -=왼쪽의 변수에 오른쪽 값 뺀 후, 그 결과 값을 왼쪽 변수에 대입
    *=왼쪽의 변수에 오른쪽 값 곱한 후, 그 결과 값을 왼쪽 변수에 대입
    /=왼쪽의 변수에 오른쪽 값 나눈 후, 그 결과 값을 왼쪽 변수에 대입
    %=왼쪽의 변수에 오른쪽 값 나눈 후, 그 나머지를 왼쪽 변수에 대입


7️⃣ 조건문 ⭐⭐⭐

if문

if(조건문){
	명령문;
}
else if(조건문){
	명령문;
}
else {
	명령문;
}

⭐⭐switch문⭐⭐ [2020년 1회]

switch(){
case;
	명령문;
    break;
default:
	명령문;
}
  • 문제 포인트
    • switch문 중간에 break가 없을 경우? -> 진입한 case부터 switch문 끝까지 동작한다!


8️⃣ 반복문 ⭐⭐⭐

⭐⭐while문⭐⭐ [2020년 3회, 4회, 2022년 1회]

while(조건문){
	명령문;
}

do while문

do{
	명령문;
}while(조건문);
  • 예시

    #include <stdio.h>
    void main(){
        int i=1; sum = 0;
        do{
            sum = sum + i;
            i++;
        } while(i<0);
        printf("%d\n", sum);
    }
    
    ---------------------------
    [출력]
    1

⭐⭐for문⭐⭐ [2020년 1회, 2021년 1회, 2회, 2022년 1회, 3회]

for(초기식; 조건식; 증감식;){
	명령문;
}

명령문;
  • for문
#include <stdio.h>
void main(){
	int i, sum = 0;
    for(i=1, i<3; i++)
    	sum = sum + i;
    printf("%d\n", sum);
}

------------------------
[출력]
3
  • 이중 for문
#include <stdio.h>
void main(){
	int i, j;
    for(i=1, i<3; i++)
    	for(j=1; j<3; j++)
    		printf("%d\n", i*10+j);
}

------------------------
[출력]
11 // i=1, j=1
12 //안쪽 for문의 증감식은 j++이므로 j는 1 증가한 2가 되고, 조건식은 j<3이므로 2<3은 참이기 때문에 반복문 수행해 i=1일때 j=2이므로 12 출력
21
22
profile
언젠가 내 코드로 세상에 기여할 수 있도록, BE 개발 기록 노트☘️

0개의 댓글