04. 표준입출력 (2)

SeongMin Kim·2021년 5월 12일
0

C 프로그래밍

목록 보기
4/5

scanf

키보드로 데이터를 입력받는 함수이며 printf와 마찬가지로 stdio.h 헤더 파일이 필요하다.

기본 구조는 아래 이미지와 같이 이루어져 있다.

입력 서식 문자는 출력 서식 문자와 비슷한 개념이다. 위 그림에서 입력을 저장하는 변수에 &a라고 되어 있는데, a가 변수이며 &a는 a의 메모리 주소이다. 엠퍼센드라고 부른다.

즉, a를 부르면 a에 저장된 값을 부르는 것이고, &a를 부르면 a의 메모리 공간의 주소를 부르는 것이다.

입력 서식 문자

정수를 입력해보자.

%d 10진수 정수 입력
%x 16진수 정수 입력
%o 8진수 정수 입력

-> 정수이므로 셋다 int변수

#include <stdio.h>
int main(void)
{
    int a, b, c;

    printf("10진수 정수 1개 입력 : ");
    scanf("%d", &a);
    printf("10진수 : %d, 16진수 : %x, 8진수 : %o \n", a, a, a);

    printf("16진수 정수 1개 입력 : ");
    scanf("%x", &b);
    printf("10진수 : %d, 16진수 : %x, 8진수 : %o \n", b, b, b);

    printf("8진수 정수 1개 입력 : ");
    scanf("%o", &c);
    printf("10진수 : %d, 16진수 : %x, 8진수 : %o \n", c, c, c);

    return 0;
}
실수를 입력해보자.

%f float형 실수 입력
%lf double형 실수 입력

-> 각각 float, double 형 변수로 받음

%e float형 e표기법에 의한 실수 입력
%le double형 e 표기법에 의한 실수 입력

-> 각각 float, double 형 변수로 받음

#include <stdio.h>
int main(void)
{
   float f1, f2;
   double d1, d2;

   printf("float형 실수 두 개 입력 : ");
   scanf("%f %e", &f1, &f2);
   printf("floqt형 실수 출력 : f1 = %f, f2 = %e \n", f1, f2);

   printf("double형 실수 두 개 입력 : ");
   scanf("%lf %le", &d1, &d2);
   printf("double형 실수 출력 : d1 = %lf, d2 = %le \n", d1, d2);

   return 0;
}
기타 나중에 배울 것

%c 한 개의 문자 입력
%s 문자열 입력
%u 10진수 정수(양수만 표현 가능) 입력

profile
갈팡질팡

0개의 댓글

관련 채용 정보