C언어 출력 함수 - putchar, printf, puts
선수학습(1개)
요약
C언어의 출력 함수 putchar, printf, puts의 사용법과 차이점을 알아봅니다. 서식 지정자(%d, %s, %c, %f, %.2f)와 소수점 자릿수 지정, putchar의 동작 원리를 정보처리기사 실기 대비 핵심 내용으로 정리합니다.
출력 함수 핵심 정리
| 함수 | 설명 | 사용법 | 출력 |
|---|---|---|---|
putchar(c) | 문자 한 개 출력 | putchar('A'); | A |
printf(fmt, ...) | 서식 지정하여 출력 | printf("%d", 10); | 10 |
puts(str) | 문자열 출력 + 자동 줄바꿈 | puts("Hi"); | Hi + 줄바꿈 |
세 함수 모두 stdio.h 헤더에 선언되어 있으므로 #include <stdio.h>가 필요합니다.
함수 이름의 의미
C 표준 라이브러리에서는 출력 함수에 put(내보내다), 입력 함수에 get(가져오다)을 관례적으로 사용합니다.
| 함수 | 이름 유래 | 의미 |
|---|---|---|
putchar | put + character | 문자 하나를 출력 |
puts | put + string | 문자열을 출력 |
printf | print + formatted | 서식을 지정하여 출력 |
getchar | get + character | 문자 하나를 입력 |
gets | get + string | 문자열을 입력 |
printf() - 서식 지정 출력 쌩기초
출력이란?
프로그램이 실행한 결과를 화면에 보여주는 것을 출력이라고 합니다.

정보처리기사 실기 코딩 문제는 "다음 코드의 실행 결과(출력)를 쓰시오" 형태로 출제됩니다. 즉, 코드가 화면에 무엇을 출력하는지 알아내야 합니다.
C언어에서 화면에 출력할 때 가장 많이 사용하는 것이 printf()입니다.
printf의 기본 구조
printf()는 큰따옴표(" ") 안에 적은 내용을 그대로 화면에 출력합니다.
숫자나 변수의 값을 함께 출력하고 싶을 때는 서식 지정자를 사용합니다. 서식 지정자란 "여기에 값이 들어갈 자리" 를 표시하는 기호입니다.

위 코드를 분해하면:
| 부분 | 역할 |
|---|---|
"나이: %d세" | 출력할 틀 (큰따옴표로 감쌈) |
%d | "여기에 정수가 들어갈 거야"라는 표시 |
, | 틀과 값을 구분하는 쉼표 |
25 | %d 자리에 들어갈 실제 값 |
결과적으로 %d 자리에 25가 들어가서 나이: 25세가 출력됩니다.
\n - 줄바꿈
\n은 줄바꿈 기호입니다. printf는 자동으로 줄을 바꾸지 않으므로, 줄을 바꾸고 싶으면 \n을 직접 넣어야 합니다.
\n 없이 출력 — 두 줄이 붙어서 나옴:
\n으로 줄바꿈 — 각각 다른 줄에 출력:
서식 지정자
서식 지정자는 %로 시작하며, 출력할 값의 종류를 지정합니다.
작은따옴표
' '는 문자 한 개('A'), 큰따옴표" "는 문자열("Hello")을 감쌀 때 씁니다.
소수점 자릿수 지정
%f는 기본적으로 소수점 6자리까지 출력합니다. 원하는 자릿수만 출력하려면 %.Nf 형식을 사용합니다.
%f는 실수 자료형인float과double모두 출력할 수 있습니다.
.N에서 N은 소수점 아래 표시할 자릿수입니다. 지정한 자릿수보다 실제 값이 짧으면 0으로 채웁니다.
여러 값 출력
하나의 printf로 여러 값을 동시에 출력할 수 있습니다.
서식 지정자와 전달하는 값의 개수와 순서가 일치해야 합니다.
putchar() - 문자 한 개 출력 기초
putchar()는 문자(char) 하나를 화면에 출력하는 함수입니다.
putchar 예시
배열에서 putchar 사용
문자 배열의 특정 인덱스에 있는 문자를 출력할 수 있습니다.
str[0]은 'H'이므로 putchar(str[0])은 putchar('H')와 같습니다.
puts() - 문자열 출력 + 줄바꿈 기초
puts()는 문자열을 출력하고 자동으로 줄바꿈을 추가합니다.
puts vs printf 비교
두 코드의 출력 결과는 동일합니다. puts는 문자열만 출력할 수 있고, printf처럼 서식 지정은 불가능합니다.
| 구분 | puts | printf |
|---|---|---|
| 줄바꿈 | 자동 | \n 직접 추가 |
| 서식 지정 | 불가 | 가능 (%d, %s 등) |
| 사용 예 | 단순 문자열 출력 | 복잡한 형식의 출력 |
putchar vs printf 비교 기초
| 구분 | putchar | printf |
|---|---|---|
| 출력 단위 | 문자 한 개 | 문자열, 숫자 등 다양한 형식 |
| 서식 지정 | 불가 | 가능 (%d, %c, %s 등) |
| 줄바꿈 | putchar('\n') 직접 사용 | \n 직접 추가 |
| 사용 예 | putchar('A'); | printf("%c", 'A'); |
문자 한 개만 출력할 때 putchar('A')와 printf("%c", 'A')는 동일한 결과를 냅니다.