c语言 有一对兔子 从出生,编程基础练习题及答案:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? - 菜鸟头头...

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

分析:

1月1对a

2月1对a

3月2对,a+a1

4月3对,(a+a1)+a1

5月5对,((a+a1)+a1)+a1+a11

类推得出规律,当月出生的兔子等于前两月出生的兔子的总和。

java代码:

public class No1

{

public static void main(String[] args){

int i;//i表示月数

int arr[]=new int[12];

arr[0]=arr[1]=1;

System.out.println("第1个月兔子1对"+","+"兔子总数2个");

System.out.println("第2个月兔子1对"+","+"兔子总数2个");

for(i=2;i<13;i++){

arr[i]=arr[i-2]+arr[i-1];

System.out.println("第"+(i+1)+"个月兔子"+arr[i]+"对"+","+"兔子总数"+(2*arr[i])+"个");

}

}

}

php代码:

$n;

$n1=1;$n2=1;

for($i=1;$i<=12;$i++){

if($i==1||$i==2){

echo "第".$i."月兔子数量是:1对。\n";

}else{

$n = $n2;//把上一月的数量赋值给临时变量

$n2 = $n1 + $n2;//上月加上上月的数量

$n1 = $n;//下次上上月的数量是这次上月的数量

echo "第".$i."月的兔子数量是:".$n2."对。\n";

}

}

?>

c语言代码:

#include

int main(){

int temp;

int m1 = 1,m2 =1;

for(int i=1;i<=12;i++){

if(i==1||i==2){

printf("第%d月的的兔子数量是:1,对。\n",i);

}else{

//把相对于相对于当前月的上月赋值

temp = m2;

//求当前月的数量,同时也是下次的上月数量

m2 = m1 + m2;

//重新设置上上月兔子的数量

m1 = temp;

printf("第%d月的的兔子数量是:%d,对。\n",i,m2);

}

}

}

C++;

#include

#include

using namespace std;

int main(int argc, char const *argv[])

{

int f1 = 1,f2 = 1,f;

cout << "第1月兔子数量" << f1 << "对" << endl;

cout << "第2月兔子数量" << f2 << "对" << endl;

for (int i = 3; i <= 12; ++i)

{

f = f2;

f2 = f1 + f2;

f1 = f;

cout << "第" << i << "月兔子数量" << f2 << "对" << endl;

}

return 0;

}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值