C 练习实例11
题目:古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)
程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....,即下个月是上两个月之和(从第三个月开始)。
程序源代码:
// Created by www.runoob.com on 15/11/9.
// Copyright (c) 2015年 素材8网教程. All rights reserved.
//
#include<stdio.h>
int main()
{
int f1=1,f2=1,i;
for(i=1;i<=20;i++)
{
printf("%12d%12d",f1,f2);
if(i%2==0) printf("\n");
f1=f1+f2;
f2=f1+f2;
}
return 0;
}
以上实例输出结果为:
1 1 2 3
5 8 13 21
34 55 89 144
233 377 610 987
1597 2584 4181 6765
10946 17711 28657 46368
75025 121393 196418 317811
514229 832040 1346269 2178309
3524578 5702887 9227465 14930352
24157817 39088169 63245986 102334155
C 语言经典100例
冯玉玺
393904315@qq.com
参考地址
使用数组方式:
#include <stdio.h> int main() { int n[41], i; //定义 n[0] = 0; //赋值 n[1] = 1; n[2] = 1; for (i = 3; i < 41; i++) { n[i] = n[i - 1] + n[i - 2]; } printf("month\tnumber\n"); //输出 for (i = 1; i < 41; i++) { printf("%d\t%d\n", i, n[i]); } //system("pause"); }输出结果为:
冯玉玺
393904315@qq.com
参考地址
zpblog
zpblog@zpblog.cn
参考地址
递归:斐波那契数列
#include<stdio.h> int fibonaci(int i) { if(i == 0) { return 0; } if(i == 1) { return 1; } return fibonaci(i-1) + fibonaci(i-2); } int main() { int i; printf("month\tnumber\n"); for (i = 1; i < 41; i++) { printf("%d\t%d\n", i,fibonaci(i)); } return 0; }zpblog
zpblog@zpblog.cn
参考地址