c语言关于银行存款复利问题

题目内容:
设银行定期存款的年利率rate为2.25%,已知存款期为n年,存款本金为capital元,试编程计算并输出n年后的本利之和deposit。程序中所有浮点数的数据类型均为double类型。
自己写的代码
#include
#include

int main(void)
{
double rate,capital,deposit,a;
int n;
printf("Please enter rate, year, capital:\n");
scanf("%lf,%d,%lf",&rate,&n,&capital);

a=1.0+rate;

deposit=capital*pow(a,n);
printf("%.3f\n",deposit);

return 0;

}

运行的结果为1,#inf00

请教下该怎么解决这个问题呢?我输入的是0.25,1,100

3个回答

说明结果无穷大,你a和n是多少

double deposit = 10000.0 * pow(1.0225,3.0); 

用VC++测试没问题啊,结果125.000
除非你的pow()有问题,我用的是 #include <cmath>

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问