# include <stdio.h> #include<math.h> int main( ) { float z,k,x,monthpay,allmoney,temp=0; int n,i; scanf("%f,%f",z,k); printf("1.\t贷款利率\t月还款额\t总还款额\n"); x=3; for(i=2;i<=6;i++) { monthpay=pow(z*x/1200.0*(1+x/1200.0),(12*k))/pow((1+x/1200.0),(12*k)-1)); allmoney=monthpay*12*t; x=x+0.5; printf("%d.\t%.2f%%\t%.2f\t%.2f\n",i,x,monthpay,allmoney); } }
时间: 2023-06-23 18:09:09 浏览: 79
这段代码有一些错误,我来帮你修改一下:
```c
#include <stdio.h>
#include <math.h>
int main()
{
float z, k, x, monthpay, allmoney;
int t = 30, i;
scanf("%f,%f", &z, &k);
printf("1.\t贷款利率\t月还款额\t总还款额\n");
x = 3;
for (i = 2; i <= 6; i++)
{
monthpay = z * x / 1200.0 * pow(1 + x / 1200.0, 12 * k) / (pow(1 + x / 1200.0, 12 * k) - 1);
allmoney = monthpay * 12 * t;
x = x + 0.5;
printf("%d.\t%.2f%%\t%.2f\t%.2f\n", i, x, monthpay, allmoney);
}
return 0;
}
```
主要修改了以下几个问题:
1. `scanf` 函数中的参数应该是 `&z` 和 `&k`。
2. 变量 `t` 没有定义,应该初始化为 30。
3. 计算月还款额的公式需要加括号,否则会出错。
4. 在 `printf` 函数中,第二个参数应该是 `x` 而不是 `i`。
还有一些细节问题,比如格式化输出时 `%d.` 后面应该有空格,以及保留两位小数应该使用 `%.2f`。
阅读全文