只要代码,用不用递归都可以

fanqie911 2004-08-04 10:20:19
一头牛到了四岁后每年都会生头小牛,小牛到四岁又可以生,问经过N年后有共多少牛
...全文
97 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanqie911 2004-08-05
  • 打赏
  • 举报
回复
我在这里谢谢各位了
nomadli 2004-08-05
  • 打赏
  • 举报
回复
快给这些好心的人分
nomadli 2004-08-05
  • 打赏
  • 举报
回复
牛多长时间死,应该编点最少是现实的东西
tenix 2004-08-04
  • 打赏
  • 举报
回复
#include <iostream>
#include <stdlib.h>

using namespace std;

int cow(int); //递归方法之一
int cow1(int); //递归方法之二
int cow2(int); //非递归方法

int main(int argc, char *argv[])
{
int n=9;
cout<<cow(n)<<endl;
cout<<cow1(n)<<endl;
cout<<cow2(n)<<endl;
system("PAUSE");
return 0;
}

int cow(int n)
{
if(n<=3)return 1;
else return cow(n-3)+cow(n-1);
}

int cow1(int n)
{
int m=1;
for(int i=n-3;i>=1;i--){
m+=cow1(i);
}
return m;
}

int cow2(int n)
{
int m1,m2,m3,m;
m1=m2=m3=m=1;
for(int i=4;i<=n;i++){
m=m1+m3;
m1=m2;
m2=m3;
m3=m;
}
return m;
}
Dong 2004-08-04
  • 打赏
  • 举报
回复
假如c语言的把cout<<f(8)<<endl;改为printf("%d\n",f(8));加上头文件就可以了
Dong 2004-08-04
  • 打赏
  • 举报
回复
#include <iostream>
using namespace std;

int f(int n)
{
if(n<4)
return 0;
int count=0;
int i = 4;
for(;i<=n;i++)
{
count = count + 1 + f(n - i);
}
return count;
}

int main()
{
cout<<f(8)<<endl;
return 0;
}
tuxw 2004-08-04
  • 打赏
  • 举报
回复
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月
   后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
2.程序源代码:
#include "stdio.h"
#include "conio.h"
main()
{
long f1,f2;
int i;
f1=f2=1;
for(i=1;i<=20;i++)
{
printf("%12ld %12ld",f1,f2);
if(i%2==0) printf("\n"); /*控制输出,每行四个*/
f1=f1+f2; /*前两个月加起来赋值给第三个月*/
f2=f1+f2; /*前两个月加起来赋值给第三个月*/
}
getch();
}

将 3 变成 4 ,自动动点脑筋看

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧