#include
fib(int n)
{if(n==0)return(0);
else if(n==1)return(1);
else
return(fib(n-1)+fib(n-2));
}
main()
{int n,s;
scanf("%d",&n);
s=fib(n);
printf("%d\n",s);
}
scanf用法:
输出的值只是空格前面的字符是因为scanf函数的输入格式错误,输入参数的变量前需要加&。
scanf("%s",s);改为scanf("%s",&s);
scanf的用法是:scanf("格式控制字符串",输入参数一,输入参数二);
格式控制字符串包含:格式控制说明,普通字符。
1、格式控制字符串表示输入的格式,(int型用%d,float用%f,double型用%lf)
2、普通字符:在输出数据的时候,按照原样输出的字符,如:"fahr=%d,celsius=%d\n"中的fahr=,celsius=。
3、输入的参数是变量的地址,所以要在变量前面加&。
#include
int Fibonacci(int n)
{
if( n == 1 || n == 2) // 递归结束的条件,求前两项
return 1;
else
return Fibonacci(n-1)+Fibonacci(n-2); // 如果是求其它项,先要求出它前面两项,然后做和。
}
void main()
{
int n;
printf("please input n: ");
scanf("%d",&n);
printf("Result: %d\n",Fibonacci(n));
}
#include
int F(int n);
using namespace std;
int main()
{
int num;
cout<<"please enter a non-negtive number: "<
int array[num];
cout<<"the fibonacci of "<
{
array[i]=F(i);
cout<
}
system("PAUSE");
return 0;
}
int F(int n)
{
if(n==0)
return 0;
if(n==1)
return 1;
else
return F(n-1)+F(n-2);
}