[CS50] C언어(자료형, 형식 지정자, 연산자)

choimarmot·2024년 1월 25일
0

[CS50] 컴퓨터 과학

목록 보기
5/8
post-thumbnail

[C] 자료형, 형식 지정자, 연산자


자료형

bool : 불리언 / 예)true, false
char : 문자 하나 / 예) y, n, a
string : 문자열
int : 특정 크기 또는 특정 비트까지의 정수, 보통 40억까지 계산
long : 'int' 보다 더 큰 크기의 정수 표현 가능
float : 소수점을 가지는 실수 / 예) 100.4, 23.434
double : 소수점을 가지는 더 큰 실수

CS50에서는 get 함수를 사용해서 위 자료형을 불러온다.

  • get_int
  • get_long

형식지정자

%c : char
%f : float, double
%i : int
%li : long
%s : string

연산자 & 주석

% : 나머지
&& : 그리고
|| : 또는
// : 주석 / 프로그래밍 언어마다 다름


활용

정수(int) 출력

# include <cs50.h>
# include <stdio.h>

int main(void)
{
    int age = get_int("what's your age?\n");
    int days = age * 365;
    printf("Your are at least %i days old.\n", days);
}
  1. 변수 age에 사용자 나이 저장
  2. 변수 days에서 사용자 나이 * 365
  3. %i = 2번에서 구한 값
# include <cs50.h>
# include <stdio.h>

int main(void)
{
    printf("Your are at least %i days old.\n", get_int("what's your age?\n") * 365);
}

코드를 이렇게 줄일 수 있지만 가독성이 떨어지기 때문에 왼쪽에서 오른쪽으로 긴 것 보다 아래 예시처럼 위에서 아래로 쓰는 것이 좋다.

    int age = get_int("what's your age?\n");
    printf("Your are at least %i days old.\n", age * 365);

실수(float) 출력

# include <cs50.h>
# include <stdio.h>

int main(void)
{
    float price = get_float("What's the price?\n");
    printf("Your total is %.2f\n", price*1.0625);
}

%f 대신 %.2f를 사용하면 소수점 2번째 자리까지만 나오게 출력 가능

짝수 홀수 구별

#include <cs50.h>
#include <stdio.h>

int main(void)
{
    int n = get_int("n: ");

    if (n % 2 == 0)
    {
        printf("even\n");
    }
    else
    {
        printf("odd\n")
    }
}

n % 2 == 0 : 'n'을 2로 나눈 나머지가 0인지 확인

profile
프론트엔드 개발 일기

0개의 댓글