我正在C程序工作,可以返回贷款支付。 yearInt是一年利息 loanAmt是贷款 总量monthlyPay是按月支付 numberPay每月支付程序,不返回任何东西
对于一些原因的号码,当我运行该程序,就什么也不显示,即使我在一个负型数。
有没有办法解决它?
#include <stdio.h>
int main(void)
{
float yearInt = -1;
int loanAmt = -1;
float monthlyPay = -1;
int numberPay = -1;
int count = 0;
while (loanAmt<0)
{
printf("Please enter valid loan value: \n");
scanf("%f", &loanAmt);
}
while (yearInt<0)
{
printf("Please enter valid yearly interest value: \n");
scanf("%f", &yearInt)
}
while (monthlyPay<0)
{
printf("Please enter valid monthly payment value: \n");
scanf("%f", &monthlyPay);
}
while (numberPay<0)
{
printf("Please enter valid number of monthly payments: \n");
scanf("%f", &numberPay);
}
if(loanAmt>monthlyPay)
{
while(count<numberPay)
{
loanAmt = loanAmt*(1 + (yearInt/12)) - monthlyPay;
count += count+1;
}
printf("The amount of last payment is: %.2f\n", loanAmt);
else
printf("The amount of last payment is: %.2f\n", loanAmt);
}
return 0;
}
变量loanAmt声明为具有int类型,但在循环中使用格式说明符%f。至少将其更改为%d。 while(loanAmt <0) { printf(“请输入有效的贷款金额:\ n”); scanf(“%f”,&loanAmt); } –
请编辑您的文章并包含编译(复制/粘贴)的_real_代码。也可以正确缩进。 – Lundin