数列计算到后面数字太大,int类型存放不了,出现负数。
程序代码:
#include<stdio.h>
int main()
{
double a=1,b=1;
int m,n;
int i;
printf("请输入项数:\n");
scanf("%d",&m);
if(m%2==0)
{
n=m/2;
for(i=0;i<n;i++)
{
printf("%25.0lf %25.0lf \n",a,b);
a=a+b;
b=a+b;
}
}
else
{
n=m/2;
for(i=0;i<n;i++)
{
printf("%25.0lf %25.0lf \n",a,b);
a=a+b;
b=a+b;
}
printf("%25.0lf",a);
}
return 0;
}
}
代码输出:
请输入项数:
47
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
165580141
267914296
433494437
701408733
1134903170
1836311903
2971215073
[此贴子已经被作者于2019-6-9 20:37编辑过]