麻烦各位大神可以用C语言描述这道题目么,用代码,谢谢 20
若一个人第一个月工资是1500,以后每一年的工资都在原基础上增加10%,那么第n年他的工资是多少?请分别用递归和递推的方法编写算法实现。...
若一个人第一个月工资是 1500,以后每一年的工资都在原基础上增加 10%,那么第 n 年他的工资是
多少?请分别用递归和递推的方法编写算法实现。 展开
多少?请分别用递归和递推的方法编写算法实现。 展开
1个回答
展开全部
设第一年的工资是1500元。
一、递推法:
main()
{
int n,i;
float a=1200,b;
scanf("%d",&n);
for(i=1;i<n;i++)
b*=1+10.0/100;
printf("第%d年的工资是%5.0f元。\n",n,b);
}
二、递归法
float f(float a,float v,int n)
{
if(n==1)return a;
else return (1+v)*f(a,v,n-1);
}
main()
{
float a=1500,v=10.0/100,b;
int n;
scanf("%d",&n);
b=f(a,v,n);
printf("第%d年的工资是%5.0f元。\n",n,b);
}
一、递推法:
main()
{
int n,i;
float a=1200,b;
scanf("%d",&n);
for(i=1;i<n;i++)
b*=1+10.0/100;
printf("第%d年的工资是%5.0f元。\n",n,b);
}
二、递归法
float f(float a,float v,int n)
{
if(n==1)return a;
else return (1+v)*f(a,v,n-1);
}
main()
{
float a=1500,v=10.0/100,b;
int n;
scanf("%d",&n);
b=f(a,v,n);
printf("第%d年的工资是%5.0f元。\n",n,b);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询