题目:设银行定期存款的年利率 rate为2.25%,已知存款期为n年,存款本金为capital
元,试编程计算并输出n年后本利之和deposit。
解析:利息=本金*利率,下一年的本金又是是今年的本利之和
逻辑:注意浮点数,导入pow函数
// 题目:设银行定期存款的年利率 rate为2.25%,已知存款期为n年,存款本金为capital元, 试编程计算并输出n年后本利之和deposit。
#include <stdio.h>
#include <math.h>
int main()
{
int n = 2; // How many years to save money
double rate = 0.0225;
int capital = 10000;
double deposit = 0;
double result = capital * pow(1 + rate, n);
printf("%lf", result);
return 0;
}
?
以上代码存在问题:
在printf中,无论是float类型还是double类型,输出都需要用%f,在有些系统中用%lf也不会出错,但是尽量还是按照标准来。
?printf中根本没有%lf格式输出这一说
scanf 中 float用%f,double用%lf,注意不要混淆
故删掉‘l’
// 题目:设银行定期存款的年利率 rate为2.25%,已知存款期为n年,存款本金为capital元, 试编程计算并输出n年后本利之和deposit。
#include <stdio.h>
#include <math.h>
int main()
{
int n = 2; // How many years to save money
double rate = 0.0225;
int capital = 10000;
double deposit = 0;
double result = capital * pow(1 + rate, n);
printf("%f", result);
return 0;
}