とおき
토오끼
とおき
전체 방문자
오늘
어제
  • 분류 전체보기 (40)
    • 과제 (16)
    • 백준 (14)
    • C 언어 (5)
    • 잡동사니 (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 반복문
  • 중복값
  • 유클리드 호재법
  • 최댓값
  • 알고리즘
  • FOR문
  • 8958
  • 11720
  • 목록
  • 알파벳 찾기
  • 2523
  • BOJ
  • 별표 출력
  • 파이썬
  • 주피터 오류
  • set함수
  • 숫자의 합
  • 문자열
  • 백준
  • 파이썬 오류
  • 입출력

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
とおき

토오끼

220915 - Univ
C 언어

220915 - Univ

2022. 9. 17. 01:34

키보드로부터의 입력을 위한 scanf()

#define _CRT_SECURE_NO_WARNINGS // scanf 경고 무시, #inclue <stdio.h> 위에 작성
#include <stdio.h>
/* scanf() 의 사용법 */
int main(void)
{
    int result;
    int num1, num2;
    
    printf("첫번째 정수: ");
    scanf("%d", &num1);
    printf("두번째 정수: ");
    scanf("%d", &num2); // & = 주소
    /* num 변수에 쓰레기값이 들어있지만, scanf를 통하여 초기화가 진행되어 쓰레기값을 미리 초기화 할 필요 X */
    
    result = num1 + num2;
    printf("%d + %d = %d \n", num1, num2, result);
    return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
/* scanf() 의 사용법 */
int main(void)
{
    int result;
    int num1, num2, num3;
    printf("세 개의 정수 입력: ");
    scanf("%d %d %d", &num1, &num2, &num3);

    result = num1 + num2 + num3;
    printf("%d + %d + %d = %d", num1, num2, num3, result);
    return 0;
}

데이터의 표현 단위 (Bit/Byte)


비트 연산자

  • & : 비트단위로 AND 연산을 한다.
  • | : 비트단위로 OR 연산을 한다.
  • ^ : 비트단위로 XOR 연산을 한다.
  • ~ : 단항 연산자로서 피연산자의 모든 비트를 반전시킨다.
  • << : 피연산자의 비트 열을 왼쪽으로 이동시킨다.
  • >> : 피연산자의 비트 열을 오른쪽으로 이동시킨다. | num >> 2; // num 은 변화 X, 두 칸 오른쪽 이동 결과만 반환

& 연산자 : 비트단위 AND

#include <stdio.h>
/* 비트 연산 */

int main(void)
{
    int num1 = 15; // 00000000 00000000 00000000 00001111
    int num2 = 20; // 00000000 00000000 00000000 00010100
    int num3 = num1 & num2; // num1과 num2의 비트단위 & 연산
                            // num3 는 00000100 ( 10진수로 표현하면 4 ) 를 반환

    printf("AND 연산의 결과: %d \n", num3);
    return 0;
}

| 연산자 : 비트단위 OR

#include <stdio.h>

int main(void)
{
    int num1 = 15; // 00000000 00000000 00000000 00001111
    int num2 = 20; // 00000000 00000000 00000000 00010100
    int num3 = num1 | num2;
    printf("OR 연산의 결과: %d \n", num3);
    return 0;
}

^ 연산자 : 비트단위 XOR (Exclusive OR)

#include <stdio.h>

int main(void)
{
    int num1 = 15; // 00000000 00000000 00000000 00001111
    int num2 = 20; // 00000000 00000000 00000000 00010100
    int num3 = num1 ^ num2;
    printf("xOR 연산의 결과: %d \n", num3);
    return 0;
}

~ 연산자 (not 연산자)

#include <stdio.h>

int main(void)
{
    int num1 = 15; // 00000000 00000000 00000000 00001111
    int num2 = ~num1;
    printf("NOT 연산의 결과: %d \n", num2);
    return 0;
}

<< 연산자: 비트를 왼쪽으로 이동 (Shift)

#include <stdio.h>

int main(void)
{
    int num1 = 15;
	
    int result1 = num1 << 1;
    int result2 = num1 << 2;
    int result3 = num1 << 3;

    printf("1칸 이동 결과: %d \n", result1);
    printf("2칸 이동 결과: %d \n", result2);
    printf("3칸 이동 결과: %d \n", result3);

    return 0;
}

>> 연산자: 비트를 오른쪽으로 이동 (Shift)

#include <stdio.h>

int main(void)
{
    int num1 = 15;
	
    int result1 = num1 >> 1;
    int result2 = num1 >> 2;
    int result3 = num1 >> 3;

    printf("1칸 이동 결과: %d \n", result1);
    printf("2칸 이동 결과: %d \n", result2);
    printf("3칸 이동 결과: %d \n", result3);

    return 0;
}

'C 언어' 카테고리의 다른 글

220926 - Univ  (0) 2022.10.06
220919 - Univ  (0) 2022.09.20
220908 - Univ  (0) 2022.09.14
220904 - Univ  (0) 2022.09.14
    'C 언어' 카테고리의 다른 글
    • 220926 - Univ
    • 220919 - Univ
    • 220908 - Univ
    • 220904 - Univ
    とおき
    とおき

    티스토리툴바