这个数列特点:第一第二个数为1,从第三个数开始,该数为前两个数之和。
第一,二数为1,求到第四十个数。
方法一
#include<stdio.h>
void main() {
int a, b;
long next, n, i;
a = 1, b = 1;
printf("%10ld%10ld", a, b);
n = 2;
for (i = 3; i <= 40; i++) {
next = a + b;
printf("%10ld", next); n++;
if (n % 6 == 0)printf("\n");//输出并控制换行
a = b; b = next;
}
}
方法二
#include<stdio.h>
void main() {
int f1 = 1, f2 = 1,i;
for (i = 1; i <= 20; i++) {
printf("%10ld%10ld", f1, f2);
f1 = f1 + f2;
f2 = f1 + f2;
if (i % 2 == 0)printf("\n");
}
}
没四列要换一次行,因为 if (i % 2 == 0)printf("\n");
当f1=1,f2=1是开始往下执行程序,就要输出一次(两个结果),然后执行f1=f1+f2,f2=f1+f2。到程序最后一行代码,没有输出的语句,所以要带着循环一次,遇到了printf就输出,这时候i=2,达到程序换行的要求,所以换行。所以为四个结果一换行。