일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 두 개 뽑아서 더하기
- 변환 문자
- Level2
- 컴파일과 컴파일러
- 완주하지 못한 선수
- zip
- level1
- re.sub
- K번째 수
- \a
- 신규 아이디 추천
- 프로그래머스
- 124나라의 숫자
- Python
- C언어 시작하기
- 크레인 인형뽑기 게임
- 제어 문자
- \b
- Level3
- Visual Studio 2019 사용법
- Visual Studio 2019 다운로드
- 해시
- %lf
- 문자열 내의 p와 y의 개수
- 3진법 뒤집기
- 탐욕법
- 음양더하기
- 3진법
- 폰켓몬
- \r
- Today
- Total
공수니의 개발일기
[C언어]데이터 출력(printf 함수) 본문
이번에는 C언어에서 데이터를 출력하는 방법에 대해 알아보도록 하겠습니다.
데이터를 출력하는 함수는 다양합니다. 그 중에서도 기본 중에 기본인 printf함수에 대해 다뤄보도록 하겠습니다.
C프로그램의 기본 구조와 데이터 출력(printf 함수)
프로그램에서 어떤 기능을 수행하는 코드 단위를 함수라고 합니다.
프로그램에서 반드시 필요한 구조는 main함수입니다. main 함수는 프로그램의 시작을 의미하며 반드시 존재해야합니다.
화면에 "Hello, world!!"라는 문구를 출력한다고 합시다.
#include <stdio.h> //standard input output의 줄임말
int main() {
printf("Hello, world!!"); // 문자열 "Hello, world!!"출력
return 0;
}
위와 같이 코딩할 수 있습니다.
첫번째 줄에 입력된 #include <stdio.h>는 헤더 파일입니다. 헤더 파일은 각 기능별로 함수를 모아놓은 모음집(?!)이라고 생각하시면 쉬울 것 같습니다. 나중에 헤더파일을 직접 만들어서 사용하기도 하니까 그 때 더 자세히 설명하기로 하고..., 여기서 사용된 헤더 파일은 stdio.h인데 이것은 standard input output(표준 입출력)의 줄임말입니다. 입출력과 관련된 함수가 정의되어있습니다.
여기서 데이터 출력으로 사용한 함수는 printf 입니다. printf 함수는 문자열을 화면에 출력하는 함수입니다.
printf("출력할 문자열")
제어 문자를 이용한 출력
다음은 제어 문자입니다. 출력 방식에 영향을 주는 문자를 제어문자라고 하는데요. 도대체 이 제어문자를 왜 사용하느냐!!! 바로 이런 경우 때문입니다.
#include <stdio.h>
int main() {
printf("Hello, world!!");
printf("Be happy");
return 0;
}
위와 같이 코드를 작성하고 실행해보면(단축키 : Ctrl+F5 혹은 F5) 다음과 같은 결과를 얻을 수 있습니다.
Hello, world!!Be happy
물론 너무나 출력은 잘되었지만 한 줄로 이어져서 나옴으로써 문장을 읽기가 불편해진 것을 확인할 수 있습니다.
그래서 이럴 때!! 제어 문자를 사용해주는 것입니다!!
아래와 같이 코드를 작성한 뒤, 실행해보면
#include <stdio.h>
int main() {
//개행 문자 '\n'
printf("Hello, world!!\n");
printf("Be happy\n");
//캐리지 리턴 '\r'
printf("Cow\rW\n"); //Cow라는 문자에서 \r을 만나서 앞으로 커서이동 W출력되므로 Wow 출력
return 0;
}
Hello, world!!
Be happy
Wow
우리가 원하는 결과를 얻을 수 있습니다. 줄을 바꿔주는 '\n'문자 외에도 여러가지 제어 문자가 있습니다.
제어 문자 | 의미와 기능 |
\n | 개행(줄을 바꿈) |
\t | 탭(tap) |
\r | 캐리지리턴(Carrige return, 출력위치를 줄의 맨 앞으로 옮김) |
\b | 백스페이스(backspace, 출력위치를 한 칸 왼쪽으로 옮김) |
\a | 알럿 경보(alert, 벨소리를 냄) |
* \는 역슬래시(백슬래시)를 의미합니다.
변환 문자를 이용한 출력
printf함수는 문자열을 출력하는 함수이기 때문에, 숫자를 출력하기 위해서는 변환하는 과정이 필요합니다. 이럴 때 변환 문자를 사용해줍니다. 변환 문자는 정수냐 실수냐 같이 데이터 형태에 따라 달라집니다. 이와 관련된 내용은 나중에 쓰면서 추가로 설명하기로 하고, 간단히 몇 가지 예시만 살펴보도록 하겠습니다.
#include <stdio.h>
int main() {
printf("%d와 %d의 합은 %d입니다.\n", 20, 30, 20+30);
printf("%lf\n", 3.141592);
printf("%.10lf\n", 3.141592);
return 0;
}
20와 30의 합은 50입니다.
3.141592
3.1415920000
"%d" ---> 정수를 출력하는 변환 문자
"%lf" ---> 실수를 출력하는 변환 문자
"%.10lf" ---> 소숫점 10자리까지 표시하여 실수를 출력하는 변환문자
(ex. "%.2lf"이면 소숫점 2자리까지)
변환문자가 위에 있는 게 다가 아니라는 점!!!
다른 변환 문자들은 필요한 곳에서 추가 설명하겠습니다!!!
'C language' 카테고리의 다른 글
[C언어]Visual Studio 2019 다운로드 및 사용법 (0) | 2021.03.23 |
---|