맨처음 c언어로 처음에 글자를 출력할 때 사용했던 코드인 printf 함수가 있었는데요, 이 것을 사용하면서 #include<stdio.h>라는 헤더파일도 사용했었습니다. 이번 시간에는 과연 그것이 뭔지, printf함수에 대해 깊게 알아보고 printf함수의 짝꿍인 scanf도 알아 보았습니다!
printf는 화면에 글자를 나타내는 대표적인 출력함수 입니다. 출력함수... 출력이라고 하면 따라오는 반댓말이 있습니다.
바로 입력인데요,
이 입력과 출력을 해주는 c언어의 함수가 있습니다. 그러니까 c언어에서 키보드로 글자를 입력받는 역할을 하는 함수(=입력함수)와 글자를 실행되는 화면에 출력하는 역할을 하는 함수(=출력함수)가 있는 것입니다.
우선 먼저 이야기할 출력함수는 사실 printf함수 말고도 여러가지가 있습니다.
그리고 이제 입력함수입니다.
입력함수는 글자를 입력받는다고 했는데, 입력 받으면 어딘가에 저장을 해야겠죠? 여기서 필요한 것이 바로 지난시간 배운, 변수입니다. 변수가 그릇이 되서 입력받은 값을 담아줄 수 있겠네요!
이것을 코드로 입력한다면 아래와 같습니다.
#include<stdio.h>
void main(){
int a; //기본적인(10진수 정수) 종류의 변수'a' 선언
scanf("%d", &a); //변수'a'에 10진수 정수를 입력받기
}
이렇게 된다면 코드로 친 숫자가 a로 들어가게 됩니다!
그러면 위에서 나온 출력함수와 합쳐서 입력받은 숫자를 출력하는 코드를 작성해 보겠습니다.
#include<stdio.h>
void main(){
int a; scanf("%d", &a);
printf("%d", a);
}
이 코드를 실행한다면, 입력한 숫자가 출력되는 것을 볼 수 있습니다!
그런데, 여기서 소수를 입력하면 어떻게 될까요..?
%d의 뜻을 다시 기억해보자면, 10진수 정수형태로 받는 것이였습니다. 그리고 다음시간 등장하는 자료형 중 하나인 int는 변수를 10진수 정수 형태라고 지정해주는 역할이기에 소수를 10진수 정수형태로 10진수 정수변수에 저장하는 것이 불가능 한 것입니다.
그래도 지금 배운 내용으로도 간단한 응용이 가능합니다.
그 중 이번엔 '****** - *******' 꼴로 된 주민번호를 - 를 빼고 숫자만 출력하는 프로그램을 만들었습니다.
#include<stdio.h>
int main(){
int numberA, numberB;
scanf("%d-%d",&numberA, &numberB);
printf("%d%d",numberA, numberB);
return 0;
}
이걸로써 입력받은 것을 원하는 대로 바꾸어 출력하는 프로그램이 완성되었습니다!
그래도 아직은 10진수 정수밖에 사용을 못하고 있는데, 문자와 소수(실수), 더 나아가서는 문자열까지 입력받고 출력할 수 있게 다음시간엔 자료형을 학습하도록 합시다.
'c언어' 카테고리의 다른 글
산술, 대입 연산자, 형 확장 (0) | 2019.06.29 |
---|---|
C언어 자료형 (0) | 2019.06.29 |
상수와 변수 (0) | 2019.06.28 |
형식문자, 이스케이프 문자 (0) | 2019.06.28 |
C언어, 들어가기 (0) | 2019.06.28 |