반응형
⌨️ C언어 scanf 사용법 완벽 가이드 – 사용자 입력 받아보기
지금까지 C언어에서 변수를 선언하고 값을 저장하는 법을 배웠다면, 이번에는 사용자로부터 데이터를 입력받는 방법을 알아볼 차례입니다.
C언어에서 입력을 받기 위해 가장 많이 사용하는 함수는 바로 scanf()
입니다.
✅ 1. scanf란 무엇인가요?
scanf()
는 키보드로 입력한 데이터를 프로그램의 변수에 저장하는 함수입니다.
사용 방법은 아래와 같습니다:
scanf("서식문자", &변수명);
- 서식문자(format specifier): 입력할 데이터의 자료형을 지정
- &변수명: 입력받은 값을 저장할 변수 주소를 지정
✅ 2. 기본 예제
#include <stdio.h>
int main() {
int age;
printf("나이를 입력하세요: ");
scanf("%d", &age);
printf("당신의 나이는 %d살입니다.\n", age);
return 0;
}
💡 주의: &
기호는 변수가 저장된 메모리 주소를 의미하며, scanf()
에서 반드시 사용해야 합니다.
✅ 3. 자료형별 scanf 서식문자
- %d → 정수(int)
- %f → 실수(float)
- %c → 문자(char)
- %s → 문자열(char 배열)
int num;
float score;
char grade;
char name[20];
scanf("%d", &num);
scanf("%f", &score);
scanf("%c", &grade);
scanf("%s", name); // 문자열은 & 불필요
❗ 4. 자주 하는 실수
- & 생략 → 값이 변수에 저장되지 않음
- 문자 입력 후
Enter
때문에%c
가 바로 실행됨 - 문자열 입력 시 공백 이후는 잘림 (예: "Hello World" → "Hello")
💡 5. 실습 예제
#include <stdio.h>
int main() {
char name[30];
int age;
float height;
printf("이름을 입력하세요: ");
scanf("%s", name);
printf("나이를 입력하세요: ");
scanf("%d", &age);
printf("키를 입력하세요: ");
scanf("%f", &height);
printf("안녕하세요 %s님! 나이: %d, 키: %.1fcm\n", name, age, height);
return 0;
}
이 코드를 실행해보고, 본인의 이름과 나이, 키를 입력해 보세요.
결과가 정확히 출력되는지 확인해보는 것이 좋습니다.
📝 6. 연습 문제
아래 조건을 만족하는 프로그램을 만들어보세요:
- 사용자로부터 숫자 2개를 입력받는다.
- 두 숫자의 합과 평균을 출력한다.
- 정수/실수형 변수를 적절히 활용한다.
힌트:int
,float
자료형을 섞어서 사용해보세요!
📌 다음 강의 예고
다음 글에서는 조건문(if, else)를 사용하여 프로그램의 흐름을 제어하는 방법을 배워봅니다.
간단한 점수 판별 프로그램을 만들어볼 거예요!
👉 다음 글: C언어 조건문 쉽게 배우기
👈 이전 글: C언어 변수 쉽게 이해하기
이 글이 도움이 되셨다면 댓글과 공감 부탁드립니다!
더 많은 실습 글은 👉 Coding Life 100 Hacks 에서 확인하세요 😊
반응형
댓글