배운것/Coding Test

printf() 함수

SangPedia 2021. 2. 17. 20:01

설명

printf() 함수는 C언어의 표준 출력함수로, 인수로 주어진 값을 화면에 출력해주는 함수

  • 형식 : printf(서식 문자열, 변수)
  • 주요 제어문자
  • 제어문자란 입력 혹은 출력 내용을 제어하는 문자이다.
문자 의미 기능
\n new line 커서를 다음줄 앞으로 이동한다.
\b backspace 커서를 왼쪽으로 한칸 이동한다.
\t tab 커서를 일정 간격을 띄운다.
\r carriage return 커서를 현재 줄의 처음으로 이동한다.
\0 null 널 문자를 출력한다.
\' single quote 작은따옴표를 출력한다.
\" double quote 큰따옴표를 출력한다.
\a alert 스피커로 벨소리를 출력한다.
\\ backslash 역 슬러시를 출력한다.
\f form feed 한 페이지 를 넘긴다.

코드 연습

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <stdio.h>
 
int main()
{
    printf("1번 %d\n"2543); 
    //정수형으로 출력합니다.
 
    printf("2번 %3d\n"2543);
    //전체 3자리를 확보한 후 오른쪽부터 출력하는데, 출력할 값이 지정한 자릿수보다 
    //큰 경우에는 자릿수를 무시하고 모두 출력합니다.
 
    printf("3번 %6d\n"2543);
    //전체 6자리를 확보한 후 오른쪽부터 출력합니다.
    
    printf("4번 %-6d\n"2543);
    //전체 6자리를 확보한 후 왼쪽부터 출력합니다.
    
    printf("5번 %06d\n"2543);
    //전체 6자리를 확보한 후 오른쪽부터 출력하되 왼쪽의 공백은 0으로 채워 출력합니다.
    
    printf("6번 %f\n"245.2555);
    //자릿수가 지정되지 않았으므로 정수 부분을 모두 출력하고 소수점 이하는 
    //기본적으로 6자리를 츨력됩니다.
    
    printf("7번%.3f\n"245.2555);
    //정수 부분은 모두 출력하고 소수점 이하는 4자리에서 반올림하여 3자리까지만 출력합니다. 
    
    printf("8번 %8.2f\n"245.2555);
    //전체를 8자리를 확보한 소수점 이하 2자리를 출력하고 남은 5자리에 정수부분을 출력합니다.
    
    printf("9번 %e\n"25.43);
    //25.43을 정수부분이 한자리만 남도록 정규화 하여 출력합니다.
    
    printf("10번 %.3s\n""help me");
    //왼쪽을 기준을 3번글자만 출력합니다.
    
    printf("11번 %3s\n""hep me");
    //전체 3자리를 확보한 후 출력하는데, 출력할 값이 지정한 자릿수 보다 큰 경우에는 
    //자릿수를 무시하고 모두 출력합니다.
    
    printf("12번 %8.6s\n""hele me");
    //전체를 8자리를 확보한 후 오른쪽부터 6글자만 출력합니다.
    
    printf("13번 %-8.6s\n""help me");
    //전체를 8 자리를 확보한 후 왼쪽부터 6글자만 출력합니다.
    
    printf("14번 250은 10진수로 %d\t 8진수를 %o\n"250250);
    //250은 10진수로 그대로 출력하고 제어문자 '\t'로인해 4칸을 띈 다음 서식 문자열의 
    //공백만큼 한 칸을 뜁니다.
    //8진수를 출력하고 서식문자열 '%o'에 대응하는 정수값250을 8진수로 출력합니다. 
    //'\n'으로 인해 커서는 다음 줄로 이동합니다.
    
    printf("15번 a=%8.2f\t b=%e\n"125.23f, 3141.592e-1);
    // '8.2f'에 대응하는 실수 값 125.23 을 전체 8 자리를 확보하여 오른쪽부터 
    //소수점과 소수점 이하 2자리를 출력하고 
    // 남은 5자리에 125를 출력합니다. 그리고 제어문자 '\t'로 인해 4칸을 띈 
    //다음 서식 문자열의 공백만큼 1칸을 띕니다.
    // '\e'에 대응하는 지수 값 3141.592e-1을 소수점 이하 한자리만 표시하는 
    //지수 형태로 출력합니다.'\n'으로 커서 다음줄로 이동합니다.    
    
    printf("16번 \'A\'는 문자로 %c, 아스키코드로 %d\n"'A''A');
    //\'A\'는 문자로 그대로 출력하되 제어문자 '\'으로 인해 "A"를 작은 따옴표로 
    //묶어서 출력합니다. 이어서 서식문자열 "%c'에 대응하는 문자 A를 출력합니다. 
    //그리고 콤마(,)를 출력한 다음 서식 문자열의 공백만큼 한 칸을 띕니다. 이어서 
    // 아스키코드로 출력하고 서식 문자열 '%d'에 대응하는 문자 'A'에 해당하는 
    //아스키코드 값을 정수형으로 출력합니다. 
    //'\n'으로 인해 커서는 다음줄로 이동합니다.
}
cs

코드 실행결과

반응형