티스토리 뷰

BackEnd/C

[2일차] 3. 입력 함수 scanf( )

JINSUKUKU 2021. 2. 13. 06:05

2021.02.06.토

입력 함수 scanf()

✔  출력 함수 scanf( )를 사용하기 위해서는 반드시 <stdio.h>를 전처리해주어야 한다.

✔  scanf("형식 지정자", &변수명) : ~의 주소를 의미하는 &을 사용해 변수 위치에 입력받은 값을 저장한다.

#include <stdio.h>

int main(void){
  int number;
  scanf("%d", &number);
  printf("%d",number);
  return 0;
}

 

 

✔  콤마(,)를 사용해서 여러 개의 값을 한 번에 입력받을 수 있다.

✔  형식 지정자가 사용된 방식이 곧 입력 형태이므로 그대로 입력을 받아야 한다.

✔  예를 들어 %d, %f 의 경우, 입력 시 2, 3.14로 입력해야 하고%d-%f 의 경우, 입력 시 3-1.23으로 입력해야 한다. 

✔  입력 값의 형태를 벗어나는 경우 에러가 발생하므로 주의하자.

#include <stdio.h>

int main(void){
  int num1;
  float num2;
  scanf("%d, %f", &num1, &num2);  	//2, 3.14
  printf("%d, %f", num1, num2);		//2, 3.14
  
  scanf("%d-%f", &num1, &num2);		//3-1.23
  printf("%d-%f", num1, num2);		//3-1.23
  return 0;
}

 

 

입력 함수 scanf() - 문자와 문자열의 저장

✔ 배열의 경우, 배열명이 곧 메모리의 주소를 의미하므로 ~의 주소를 의미하는 &를 생략한다.

#include <stdio.h>

int main(void){
  char fruit[10];
  
  scanf("%s",fruit);		//apple
  printf("%s\n", fruit); 	//apple  
  
  return 0;
}

 

 

공백까지 포함해 입력받고 싶다면 형식 지정자를 %[^\n]s 와 같이 지정해서 사용하자

#include <stdio.h>

int main(void){
  char hello[20];
  	
  scanf("%[^\n]s",hello);			//hello world
  printf("%s", hello); 	//hello world  
  
  return 0;
}

 

 

 

 

[참고] 한빛미디어-혼자 공부하는 C언어 유튜브 강의 / 엘리스 트랙-혼자 공부하는 C언어 / 길벗-C언어 코딩도장 / 위키백과

댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
최근에 올라온 글
글 보관함
Total
Today
Yesterday