回 帖 发 新 帖 刷新版面

主题:用于产斐波那契数列的前10个数(1,1,2,3,5,8,13,...

这道题目怎么做,高手快帮帮我啊,急!!!!!!

回复列表 (共24个回复)

11 楼

写个大概:
a=1,b=1;
next=a+b
a=b;
b=next;

12 楼

多老的问题呀,同志你自己想想吧,他们的都别看了,就想着递归出口是1和2的下标是为1,写个这样的递归函数就可以了,所以还是自己做吧

13 楼

关键是把思路弄明白了 给你再多的例子也没用 因为思路都差不多~~

14 楼

[quote]
void generate(int N){
    int m=1,n=1;
    int mn = m+n;
    int k=1;
    if(k++ == 1)printf("1,");
    if(k++ == 2) printf("2,");
    for(;k<=N;k++){
        printf("%d,",mn);
        m=n;n=mn;mn=m+n;
    }
}
[/quote]
    if(k++ == 1)printf("1,");
    if(k++ == 2) printf("2,");
怎么写的这么多余??
printf("2,");错了,最后还多输出一个逗号。。。。

偶改的:
void generate(int N)
{
    int m = 1, n = 1;
    int mn = m + n;
    if(N >= 1)printf( "1");
    if(N >= 2)printf(",1");
    for(int k = 3; k <= N; k ++)
    {
        printf(",%d", mn);
        m = n; n = mn; mn = m + n;
    }
}

15 楼

思路~~~~

16 楼

#include "stdafx.h"
#include "mathlab.h"
using namespace method;
int main(int argc, char* argv[])
{
    hreal a("0"),b("1");
    int n,tag(0);
    scanf("%d",&n);
    while(n--)
    {
        if(tag)
        {
            b.add(a);
            b.display();
            tag=0;
        }
        else
        {
            a.add(b);
            a.display();
            tag=1;
        }
    }
    return 0;
}

前一百个:
100
+1.E-0
+2.E-0
+3.E-0
+5.E-0
+8.E-0
+13.E-0
+21.E-0
+34.E-0
+55.E-0
+89.E-0
+144.E-0
+233.E-0
+377.E-0
+610.E-0
+987.E-0
+1597.E-0
+2584.E-0
+4181.E-0
+6765.E-0
+10946.E-0
+17711.E-0
+28657.E-0
+46368.E-0
+75025.E-0
+121393.E-0
+196418.E-0
+317811.E-0
+514229.E-0
+832040.E-0
+1346269.E-0
+2178309.E-0
+3524578.E-0
+5702887.E-0
+9227465.E-0
+14930352.E-0
+24157817.E-0
+39088169.E-0
+63245986.E-0
+102334155.E-0
+165580141.E-0
+267914296.E-0
+433494437.E-0
+701408733.E-0
+1134903170.E-0
+1836311903.E-0
+2971215073.E-0
+4807526976.E-0
+7778742049.E-0
+12586269025.E-0
+20365011074.E-0
+32951280099.E-0
+53316291173.E-0
+86267571272.E-0
+139583862445.E-0
+225851433717.E-0
+365435296162.E-0
+591286729879.E-0
+956722026041.E-0
+1548008755920.E-0
+2504730781961.E-0
+4052739537881.E-0
+6557470319842.E-0
+10610209857723.E-0
+17167680177565.E-0
+27777890035288.E-0
+44945570212853.E-0
+72723460248141.E-0
+117669030460994.E-0
+190392490709135.E-0
+308061521170129.E-0
+498454011879264.E-0
+806515533049393.E-0
+1304969544928657.E-0
+2111485077978050.E-0
+3416454622906707.E-0
+5527939700884757.E-0
+8944394323791464.E-0
+14472334024676221.E-0
+23416728348467685.E-0
+37889062373143906.E-0
+61305790721611591.E-0
+99194853094755497.E-0
+160500643816367088.E-0
+259695496911122585.E-0
+420196140727489673.E-0
+679891637638612258.E-0
+1100087778366101931.E-0
+1779979416004714189.E-0
+2880067194370816120.E-0
+4660046610375530309.E-0
+7540113804746346429.E-0
+12200160415121876738.E-0
+19740274219868223167.E-0
+31940434634990099905.E-0
+51680708854858323072.E-0
+83621143489848422977.E-0
+135301852344706746049.E-0
+218922995834555169026.E-0
+354224848179261915075.E-0
+573147844013817084101.E-0
Press any key to continue

希望没错。

17 楼

这个用2维数组来做最好了

18 楼

#include "stdio.h"
main()
{  int f1=1,f2=1,fn,n=0;
   printf("%d,%d,",f1,f2);
   fn=f1+f2;
   while(n<8)
  { f1=f2;
    f2=fn;
    fn=f1+f2;
    printf("%d,",fn);
    n++;
  }
}

19 楼

我是个新手,也试一试:
#include<stdio.h>

int main (void)
{
    int i,Fibonacci[10];

    Fibonacci[0] = 0;
    Fibonacci[1] = 1;

    for (i = 2; i < 10; ++i)
        Fibonacci[i] = Fibonacci[i-2] + Fibonacci[i-1];
        
    for (i = 0; i < 10; ++i)
        printf ("%i\n", Fibonacci[i]);

    return 0;
}

20 楼

哈~~

高精做的:

50000
f(50000)=
1077773489  3072974780  2790388551  1948082962  5106769411
5797849023  0921003274  4735364652  3049848844  4020476029
8493194332  8327405495  3307539817  3304830674  1483538717
5554540519  8446200873  4642493807  2325821301  6701908119
8825161861  4959586085  4099373751  0653044874  4637829968
5138932566  3668163313  1732045918  9318988631  3559961265
5615546389  7640305571  5140539792  2601243227  3048290007
1690886378  6206755177  0083226932  8087849866  2740588365
3759375827  4508704744  1929768088  3496131129  7128859285
1767548484  1510325238  5146533492  1528252459  0844666984
1110158718  2887301894  5063113415  1562379824  5893600417
5689957201  2659615762  8990959355  7314021380  2968576539
0557089535  8471126839  6232119536  0189733388  1142381405
1526459374  0927152326  5040595837  5081521373  2368481593
2367284475  7511946755  7464554422  1265422202  7569628393
7536759059  1559554638  7856425689  6667116761  4673848038
0143490980  3321471265  5252451441  5254983204  8734930166
0567688206  6877175991  9744444935  9350886395  0801480054
4331468556  5499363349  9413914307  2089673319  5422137696
6451985500  4306020366  5070030522  9172304180  8934238051
9209534100  0715872989  3603386457  6702431887  0964579896
。。。。。。
9269220256  0757648675  6312206236  4760003202  5822149886
5747307869  0660880075  9317271705  8800631067  0760256942
4608913827  4686567385  0922613623  6187782186  5883357996
8123293930  2858886153  1195675558  6386775355  7403720513
4653019181  4647413943  6450863288  6321237869  1447596137
0537263524  0130896237  1789856453  1843576129  3363137895
7881001288  1399891145  1017309988  2783672791  4005699048
6891770644  2538694807  1135196729  7092824202  9848124088
7888043160  9348366135  7223273057  7430012836  5219671994
1249502185  3475847601  0543101647  1834652334  6260217499
2570730116  6131890116  9583713619  6346010376  4014859524
9430353154  5751807381  7035386721  4888867285  7626796472
1624171533  8184660352  9369168061  2158691069  6813356929
8701863093  9743771880  0496285242  9839846398  7863839029
0487949768  2857610688  8266616227  1772262662  2250277735
1380617439  9213985956  4690782235  9279948154  3627915442
2537138563  1516597782  5335682210  5524886400  5027657816
5072180476  4164746233  9162213993  4129626491  8214925606
2045013743  0427785734  2560329690  4711809004  3011420749
1819855872  5792255252  0870565466  9240631463  5362755264
0483022658  9992544397  7115624488  0729827724  2831199965
0761190436  0947871285  2663234822  8828651932  5611312473
2013775586  2125287560  8710247960  8712043180  1164586270
7919827977  7781613711  2912950952  4339173134  6239583285
7336326596  4801565028  6988515006  4689099206  5984754551
0172427616  1762406517  3991693950  4597982496  5215912561
3321264674  7851195837  4166434242  9297910142  0604760095
4923198574  4903072767  2157337435  6686311155  9037945056
6286530080  5757807630  6080348280  0642069793  5191642209
7496806542  7952408907  9326599081  0237871527  2523242170
0911366146  8412415872  4497988910  3175286866  4346010535
7181934446  9221094459  9941476830  1104269876  9060387854
1756211618  1321330670  8085932060  5380702069  8071823063
3304686156  2923270504  5196419148  0310597056  2801360817
5009331914  2918858087  5196260545  8474604194  2062572247
5367674237  2629234677  6310542606  8549719178  3786688197
8680521257  6177264040  9495112155  7618826982  2366838153
9682186867  6292629075  5720567510  3732451647  5684294442
3699212491  2404874642  8158068675  0806724451  0645124441
9223433625  1813764582  8033764612  0957199361  9736455646
2149210633  5887030818  2304266593  0493669537  6803722039
7037490781  9690111266  5240202976  1830536425  2373553125

digits : 10450

怎么验证???

我来回复

您尚未登录,请登录后再回复。点此登录或注册