void foo(int x, int y)
{
if (x > 1000) return;
if (x == y && x == 1)
{
printf("%d %d ", 1, 1);
foo(x + y, x);
return;
}
else
{
printf("%d ", x);
foo(x + y, x);
}
}
void foo(int x, int y)
{
if (x > 1000) return; //输出1000以内的
if (x == y && x == 1) // 如果是初始的2个
{
printf("%d %d ", 1, 1); //输出 1 1
foo(x + y, x); //递归调用第三项
return;
}
else
{
printf("%d ", x); //输出当前项
foo(x + y, x); //递归调用下一个项
}
}