출력 변환 기호란?
그릇의 크기정해서 출력물로 표현해준다.
기호 | 의미 | 데이터 |
%d | 부호 있는 10진수 출력 | double 정수, 문자 |
%f | 고정 소수점으로 출력 | float 정수, 실수 |
%c | 문자 출력 | character 문자 |
%s | 문자열 출력 | string 문자열 포인터 |
%x | 16진수 출력 | hexadecimal number 정수 |
%o | 8진수 출력 | octal number 정수 |
출력 변환 기호란?
예를 들어
printf("%d", 10)이면
10이라는 값이 %d에 대입돼서, 부호 있는 10진수로 출력이 된다
%d는 문자도 받을 수 있는데, 모든 문자는 ASCII코드로 숫자화 할 수있어서, 문자를 대입해도 숫자로 출력할 수 있다.
ex.
1. printf("값1: %d, 값2: %d", 10, 5); -> 값1: 10, 값2: 5
2. printf("값: %c", 65); -> 값: A
3. printf("값: %c", 'A'); -> 값: A
4. printf("값: %s", "반갑습니다"); -> 값: 안녕하세요
5. printf("값: %x", 34); -> 값: 22
6. 10진수->2진수->16진수로
6-해설
10진수->2진수
128 64 32 16 8 4 2 1
0 0 1 0 0 0 1 0
2진수->16진수(4개씩 잘라서 구한다.)
8 4 2 1 | 8 4 2 1
0 0 1 0 | 0 0 1 0
1이 있는 부분의 값이 22이므로 16진수로 변환하면 22
7. printf("값: %o", 34); -> 값: 42
7-해설10진수->2진수->8진수
128 64 32 16 8 4 2 1
0 0 1 0 0 0 1 0
2진수->8진수(3개씩 잘라서 구한다)
2 1 | 4 2 1 | 4 2 1
0 0 1 0 0 | 0 1 0
1이 있는 부준의 값이 42이므로 16진수로 변환하면 42
정수형 자리수 지정
1. printf("값: %d", 13); -> 값: 13
2. print("값: %5d", 13); -> 값: ○○○13
%5d는 공간을 5개 만들고 우측부터 작성한다고 생각
3. printf("값: %05d", 13); ->값: 00013
%05d는 공간을 5개 만드는데, 공간을 0으로 채우고 우측부터 작성한다고 생각
실수형 자리수 지정
1. printf("값: %f", 3.26); -> 값: 3.260000
실수는 소수점이 6자리이다.
2. printf("값: %6.1f", 3.3); -> 값: ○○○3.3
6.1f는 6개의 공간을 만들고 소수점 1자리까지 표현한다(소숫점(.)까지 공간에 포함)
3. printf("값: %-6.1f", 3.26); -> 값: 3.3○○○
-6.1f 6개의 공간을 만들고 왼쪽부터 출력하고(-) , 소숫점1자리 까지 표현해라
4. printf("값: %-6.3f"., 3.26); -> 값: 3.260○
6.3f는 6개의 공간을 만들고 왼쪽부터 출력해서(-), 소숫점 3자리 까지 표현해라
ex.
#include<stdio.h>
void main() {
double d_value;
float f_value = 5.65;
int n;
d_value = f_value;
d_value= d_value +0.5;
n = (int)d_value;
printf("%3.1f, %d", d_vlaue, n);
}
답 6.2, 6
d_value | f_value | n | |
d_value = f_value | 5.65 | 5.65 | |
d_value+0.5 | 6.15 | ||
int(d_value) | 6 [n은 정수형 공간인데 d_value는 실수라서 그릇크기가 달라서 넣을 수 없는데, 실수인 d_value를 int화(정수화) 시킨다 -> 반올림 올림 아니고 버림한다] |
||
%3.1f | 공간 3개 만들고 소수점 1자리까지 표현한다 ○○○에 6.15를 넣는데 0.05는 반올림해서 6.2(.포함 공간3개) |
'iOS > 정보처리기사' 카테고리의 다른 글
[정보처리기사] C언어 - 매크로(feat. 매크로를 적용한 비트연산문제) (0) | 2022.05.26 |
---|---|
[정보처리기사] C언어 - 진법전환(2진수,8진수,16진수) / 비트연산(&,|,^,<<,>>) (0) | 2022.05.26 |
[정보처리기사] C언어 - 관계연산자/논리연산자, 조건문 (0) | 2022.05.23 |
[정보처리기사] C언어 - 연산자 우선순위 (0) | 2022.05.23 |
[정보처리기사] C언어 - 산술연산자(a++, ++a, a+= 등) (0) | 2022.05.20 |