- 请帮忙编个程序?
- 请帮忙编个?
- 递推关系如下:
第二题
f(1)=0
f(n)=f(n-1) + 2^(n - 2) (n >= 2)
第三题
f(1)=1
f(n)=f(n-1) + 2*(n - 2) (n >= 2)
第四题
g(1) = 1
g(2) = 2
g(n) = g(n-1)+g(n-2) (n >= 2)
f(n)=g(n)/g(n + 1)
源(分别以函数的形式写出,在主函数main中打印):
#include
#include
float Question2(int);
int Question3(int);
int Question4(int);
int main(void)
{
/* 此处添加你自己的代码 */
int n = 20; //求第几项
printf("第二题的答案:\n第%d项为:\t%d\n\n",n,(int)Question2(n));
printf("第三题的答案:\n第%d项为:\t%d\n\n",n,Question3(n));
printf("第四题的答案:\n第%d项为:\t%d/%d\n\n",n,Question4(n),Question4(n + 1));
return 0;
}
float Question2(int n)//解第二题的函数
{
if (n == 1)
return 0;
else
return Question2(n - 1) + pow((float)2,(n - 2));
}
int Question3(int n)//解第三题的函数
{
if (n == 1)
return 1;
else
return Question3(n - 1) + 2*(n - 2);
}
int Question4(int n)//解第四题的函数,求第N项的分母,也就是第N+1项的分子
{
if (n == 1)
return 1;
else if (n == 2)
return 2;
else
return Question4(n - 1) +Question4(n - 2);
}
执行结果如下图所示