본문 바로가기
카테고리 없음

[C언어 기초] scanf 사용법 완벽 가이드 – 사용자 입력 받아보기

by 두뇌향상중 2025. 7. 31.
반응형

⌨️ 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 에서 확인하세요 😊

반응형

댓글