04. 표준입출력 (2)
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진수 정수(양수만 표현 가능) 입력
Author And Source
이 문제에 관하여(04. 표준입출력 (2)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ksmksj5265/04.-표준입출력2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)