사용자에게 원화값과 1달러당 원화가 얼마인지 환율정보를 입력받아, 몇 달러인지 출력하는 프로그램을 작성해 보자.
환율값에 따라서 원화를 달러로 환산하는 공식은 다음과 같다.
달러 = 원화 / 환율
공식을 알았으니 코드를 한 번 작성해 보자.
#include <stdio.h>
#include <stdlib.h>
int main() {
int won; // 정수값 원화 변수
float dollar; // 실수값 달러 변수
float exchange_rate; // 실수값 환율 변수
printf("KRW?: ");
scanf("%d", &won) ; // 사용자에게 입력받기 (정수형, won 변수에 저장)
printf("원/달러 환율? (1달러당 KRW는 얼마?): ");
scanf("%f", &exchange_rate); // 사용자에게 입력받아라 (실수형, exchange_rate 변수에 저장)
dollar=won/exchange_rate; // 달러=원화/환율
printf("KRW %d = USD %.2f 입니다.", won, dollar); // dollar값 소수점 2자리 출력
return 0;
}
우선 우리가 주로 사용하는 원화는 다들 알다시피 모든 단위가 소숫점이 없는 정수값으로 사용한다. 2,350\, 뭐 이런 식으로 말이다. 따라서, 원화는 정수값이기 때문에, int형의 won변수를 선언했다.
달러값의 경우, 3달러 25센트를 3.25달러로 소숫점을 사용해 표현하기 때문에 실수값이 된다. 따라서, 달러는 실수값이기 때문에, float형의 dollar변수를 선언했다.
원화를 달러로 환산할 경우, 달러값이 실수형이 나올 수 있기 때문에 환산값이 실수값이 된다. 따라서, 환산값 또한 실수값이기 때문에 float형의 exchange_rate변수를 선언해서 사용했다.
printf 함수를 통해, 사용자에게 달러값 환산을 원하는 원화값과 1달러당 원화가 얼마인지 물어보는 메시지를 띄워서 입력을 받게 했다. 사용자가 입력한 원화값과 환율값은 각각 int형의 won변수와 float형의 exchange_rate변수에 저장된다.
본문 최상단의 환율값에 따른 원화 → 달러 환산 공식을 활용해, 원화/환율 계산값을 float형의 dollar변수에 저장하도록 했고, printf 함수를 이용해 계산결과 값이 저장되어 있는 exchange_rate변수를 사용자에게 보다 보기 편하도록 출력했다.
통상적으로 달러는 소숫점 이하 2자리까지 표시해서 사용하므로, %f가 아닌 %.2f를 사용한다면 소숫점 이하 2자리까지 출력하므로 사용자가 판단해서 사용하기 편리하도록 설계했다.