이번 글에서는 C 언어로 프로그램을 작성하여 복리(Compound Interest)를 계산하는 방법을 알아보겠습니다. 계산 로직 자체는 매우 간단하며, 다음과 같은 세 가지 매개변수만 준비하면 됩니다.
- P − 원금 (Principle Amount)
- R − 연 이자율 (Rate of Interest)
- T − 투자 기간 (Time Span)
복리를 계산하는 수학 공식은 다음과 같습니다.

공식에서 확인할 수 있듯이, 원금에 (1 + 이자율 ÷ 100)을 기간(T)만큼 거듭제곱한 값을 곱하면 복리가 반영된 최종 금액을 구할 수 있습니다. C 언어에서는 math.h 헤더 파일에 포함된 pow() 함수를 사용하면 거듭제곱 연산을 손쉽게 처리할 수 있습니다.
예제 코드
#include<stdio.h>
#include<math.h>
float compoundInterest(float P, float T, float R) {
return P * (pow((1 + (R / 100)), T));
}
int main() {
float p, t, r;
printf("원금, 이자율, 기간을 입력하세요: ");
scanf("%f%f%f", &p, &r, &t);
printf("복리 적용 금액: %f", compoundInterest(p, t, r));
return 0;
}
실행 결과
원금, 이자율, 기간을 입력하세요: 5000 7.5 3 복리 적용 금액: 6211.485352
코드 동작 원리
위 예제의 실행 흐름을 단계별로 살펴보면 다음과 같습니다.
main()함수에서scanf()를 통해 사용자로부터 원금(P), 이자율(R), 기간(T)을 차례대로 입력받습니다.- 입력받은 값들을 인자로 전달하며
compoundInterest()함수를 호출합니다. compoundInterest()함수 내부에서는pow()함수를 이용해 (1 + R/100)T를 계산한 뒤, 여기에 원금 P를 곱하여 최종 복리 금액을 반환합니다.- 반환된 결과값을
printf()로 출력합니다.
위 실행 결과를 보면, 원금 5,000원을 연 이자율 7.5%로 3년간 복리 운용했을 때 약 6,211.49원이 된다는 것을 확인할 수 있습니다. 단순 이자와 달리 발생한 이자가 원금에 누적되어 다시 이자를 생기기 때문에, 기간이 길어질수록 복리의 효과는 더욱 커집니다.