1069(递归)

题目中写若干个,但while循环过不去,测试集只有三个数据;所以用了下面的for循环
#include<stdio.h>
int f(int n) {
if(n == 1)
{
return 1;
}
if(n == 2)
{
return 2;
}
if(n != 1 && n != 2)
{
return f(n-1)+f(n-2);
}
}
int main() {
int n;
while(1)
{
scanf("%d",&n);
int m = f(n);
printf("%d\n",m);
}
}
#include<stdio.h>
int f(int n) {
if(n == 1)
{
return 1;
}
if(n == 2)
{
return 2;
}
if(n != 1 && n != 2)
{
return f(n-1)+f(n-2);
}
}
int main() {
int n;
for(int i=0;i<3;i++)
{
scanf("%d",&n);
int m = f(n);
printf("%d\n",m);
}
}

浙公网安备 33010602011771号