/*
已知银行整存整取不同期限存款的年利率分别为
2.25% 1年
2.43% 2年
2.70% 3年
2.88% 5年
3.00% 8年
要求输入存钱的本金和期限,求到期时的本利之和
/
#include"stdio.h"
int main(void)
{
int deposit,capital,year;
printf("Input capital and time:");
scanf("%d%d",&capital,&year);
switch(year)
{
case 1:
float rate=0.0225;
deposit=capital(1+rate);
printf("%d\n",deposit);
break;
case 2:
float rate=0.0243;
deposit=capital*(1+2rate);
printf("(单利)%d\n",deposit);
int i;
float number=1;
for(i=0;i<2;i++)
number=(1+rate);
deposit=numbercapital;
printf("(复利)%d\n",deposit);
break;
case 3:
float rate=0.0270;
deposit=capital(1+3rate);
printf("(单利)%d\n",deposit);
int i;
float number=1;
for(i=0;i<3;i++)
number=(1+rate);
deposit=numbercapital;
printf("(复利)%d\n",deposit);
case;
case 5:
float rate=0.0288;
deposit=capital(1+5rate);
printf("(单利)%d\n",deposit);
int i;
float number=1;
for(i=0;i<5;i++)
number=(1+rate);
deposit=numbercapital;
printf("(复利)%d\n",deposit);
break;
case 8:
float rate=0.0300;
deposit=capital(1+8rate);
printf("(单利)%d\n",deposit);
int i;
float number=1;
for(i=0;i<8;i++)
number=(1+rate);
deposit=number*capital;
printf("(复利)%d\n",deposit);
break;
}
return 0;
}
变量在函数的开始声明一次,然后在各个case里面赋值。
int i
float rate;
float number;
...
case 1:
rate=0.0225;
...
以两年的为例:
deposit=capital*(1+2rate);这么写不对,
应该是deposit=capital*(1+rate)*(1+rate); //两年的
同理,3年的就乘以3次(1+rate),四年的乘以4次(1+rate)
case里面不能重复定义rate这个变量,要在外面定义