11. 11
변수 선언 시 주의사항
변수 이름은 알파벳, 숫자, 언더바(_)로 구성
대소문자 구분
변수 Num과 변수 num은 서로 다른 변수
변수 이름은 숫자로 시작 불가
키워드 사용 불가 (if, else, for, while …)
공백 포함 불가
27. 27
특수 문자의 종류
f와 v는 모니터출력이 아닌 프린터출력을 위해 정의된 특수문자
이기 때문에 모니터의 출력에 사용하면, 이상한 문자 출력
28. 28
printf 함수의 서식지정과 서식문자들
서식문자 설명
%d , %i 10진수 정수 (양수,음수)
%x 16진수 정수
%o 8진수 정수
%f 10진수 실수(소수점 이하 6자리까지 표현, 7자리를 반올림, float)
%lf 10진수 실수(소수점 이하 6자리 까지 표현, 7자리를 버림, double)
%c 한 개의 문자
%s 문자열
%u 10진수 정수 (양수)
%e e 표기법에 의한 실수 (소수점 6자리까지 표현, 7자리를 반올림)
%E E 표기법에 의한 실수 (소수점 6자리 넘는 것도 표현)
%g 소수점 이하 자리 수에 따라 %f , %e를 선택
%G 소수점 이하 자리 수에 따라 %F, %E를 선택
%% % 기호 출력
29. 29
필드 폭을 지정한 정돈된 출력
%8d
• 필드 폭을 8칸 확보 후, 오른쪽 정렬하여 출력 진행
%-8d
• 필드 폭을 8칸 확보 후, 왼쪽 정렬하여 출력 진행
30. 30
실수 출력을 위한 서식문자 :%d, %e
#include <stdio.h>
int main(void)
{
printf("%f n", 0.1234);
printf("%e n", 0.1234);
printf("%f n", 0.12345678);
printf("%e n", 0.12345678);
return 0;
}
31. 31
실수 출력을 위한 서식문자 :%g
#include <stdio.h>
int main(void)
{
double d1=1.23e-3;
double d2=1.23e-4;
double d3=1.23e-5;
double d4=1.23e-6;
printf("%g n", d1);
printf("%g n", d2);
printf("%g n", d3);
printf("%g n", d4);
return 0;
}
32. 32
문자 출력을 위한 서식문자: %s
#include <stdio.h>
int main(void)
{
printf("%s, %s, %s n", "AAA", "BBB", "CCC");
return 0;
}
33. 33
Scanf: 정수 기반 입력형태 정의
• %d: 10진수 정수 형태로 데이터 입력 받음.
• %o: 8진수 양의 정수 형태로 데이터 입력 받음.
• %x: 16진수 양의 정수 형태로 데이터 입력 받음.
#include <stdio.h>
int main(void)
{
int num1, num2, num3;
printf("세 개의 정수 입력: ");
scanf("%d %o %x", &num1, &num2, &num3);
printf("입력된 정수 10진수 출력: ");
printf("%d %d %d n",num1, num2, num3);
return 0;
}
34. 34
형 변환 (Type Conversion)
특정 데이터의 형을 다른 데이터의 형으로 변환
묵시적 형변환
컴파일러에 의해 자동으로 수행
수식에서 데이터형이 혼합되어 사용되거나, 특정 변수에
다른 형의 값이나 변수 대입 시
명시적 형변환
프로그래머가 cast(형 변환자)를 사용하여 강제적으로 형
변환 수행
‘(변환하고자 하는 타입)’ 을 변수 앞에 적어줌
Ex> myInt = (int)myFloat;
35. 35
실습문제
대출 상환금 계산 프로그램
고객이 대출한 금액, 상환년수, 연이자율을 이용해 고객이
장기적 혹은 총 갚아야할 금액을 알려주는 프로그램
d = 연상환금 (고객이 매년 갚아야 할 상환금)
p = 대출 원금
y = 상환 년수
r = 연 이자율 (%)
결과값은 소수점 이하는 버리고 정수형으로 출력
d =
(1 + 𝑟) 𝑦
−1
(1 + 𝑟) 𝑦
∗ 𝑝 ∗ 𝑟