C语言,编写程序,输出斐波那契序列1,2,3,5,8,13....的前50项,要求每行输出10项

2025-03-06 21:44:05
推荐回答(2个)
回答1:

一行10项排不下,已改为一行输出5个

#include 
void main()
{
int i,n=0;
double f[50]={1,2};
for(i=2;i<50;i++)
if(i>1) f[i]=f[i-1]+f[i-2];
for(i=0;i<50;i++)
{
printf("%-12.f",f[i]);
n++;
if(n%5==0)
printf("\n");
}
}

回答2:

#include
using namespace std;

int f(int n)
{
if (n == 1 || n == 2)
{
return 1;
}

return f(n -1) + f(n-2);
}

int main()
{
for (int i = 1; i <= 20; i++)
{
cout << f(i) ;

if (i % 5 == 0 && i != 0)
{
cout << endl;
}
else
{
cout << ",";
}
}
return 0;
}