c语言问题,这道题怎么在输出时保留两位小数

c语言问题,这道题怎么在输出时保留两位小数题目
计算存款的本金和复利之和。输入存款金额 money、存期 year 和年利率 rate,根据公式计算存款到期时的本息合计sum(税前),输出时保留2位小数。sum = money(1+rate)^year(提示:在C语言里,^要用pow()函数计算,详见书后附录)。

**输入格式要求:"%d" "%lf" 提示信息:"Enter money:" "Enter year:" "Enter rate:"

**输出格式要求:"sum = %.2f\n"

程序运行示例如下:

Enter money:1000

Enter year:3

Enter rate:0.025

sum = 1076.89

#include <stdio.h>
#include <math.h>
main ()
{
int money, year;
double rate,sum;
printf("Enter money:");
scanf ("%d" , &money);
printf("Enter year:");
scanf ("%d" , &year);
printf( "Enter rate:");
scanf("%lf", &rate);
sum = (double)pow(money * (1 + rate), year);
printf("sum = %.2f\n", sum);
}

此代码在最后printf("sum = %.2f\n",sum);中的%.2f已经将结果的小数点后第3位四舍五入到第2位保留2位小数了。不知你问的还有没有其他意思?追问

那为什么答案不一样

可以告诉我错哪里了吗_(:_」∠)_

追答

检查pow那一句,你是不是写错了?应该是money*pow(1+rate,year)吧?

追问

我回去再试试

温馨提示:答案为网友推荐,仅供参考
相似回答