帮忙看下c语言哪里错了
存款利息的计算.有1000元,想存5年,可以按一下5种办法存:
(1).一次存5年期.
(2).先存2年期,到期之后将本息再存3年期.
(3).先存3年期,到期之后将本息再存2年期.
(4).存一年期,到期后将本息在存一年期,连续存5次.
(5).存活期存款.活期利息每一集都结算一次.
#include<stdio.h>
#include<math.h>
int main()
{
int m,n;
double r1=0.015,r2=0.021,r3=0.0275,r4=0.03,r5=0.0035;
double p1,p2,p3,p4,p5;
printf("输入本金及存款年限:");
scanf("%lf%lf",&m,&n);
p1=m*(1+n*r4);
p2=(m*(1+2*r2))*(1+3*r3);
p3=(m*(1+3*r3))*(1+2*r2);
p4=m*pow(1+r1,5);
p5=m*pow(1+0.0035/4,4*n);
printf("%lf %lf %lf %lf %lf",p1,p2,p3,p4,p5);
return 0;
}
scanf输入的数据是浮点数,会直接写入整形变量空间,没有进行浮点到定点的转换,所以m,n中的数是错误的,计算结果自然也就不可用了。而且既然已经确定是5年,那还输入n干啥,p1、p5用到n,p2,p3和n无关,p4直接用数字5
下一篇:c语言程序题求该程序结果
热门标签: