C语言练习题
費波納契數列(數學題計算)
Time Limit: 1.0s Memory Limit: 256M
問題簡述:
老師出了一道數學題,計算公式如下,
若i = 0,則F(0) = 100; 若i 為偶數,則F(i) = F(i − 1)– i2 + i ; 若i 為奇數,則F(i) = F(i − 1)+i2 − i ;
若要一一計算 F(1)至F(1000) 會要很多時間,請寫個函式幫忙自動計算。
需要完成及繳交的函式:
- int f(int i) 函式
- i : 要計算F(i) 的值
- 程序: f() 是一個遞迴函式,用以計算並回傳 f(i) 的值
int f(int i) {
//請完成並繳交本函式
}
程式樣板:
#include <stdio.h>
int f(int i)
{
//你的程式碼
}
int main( int argc, char *argv[] )
{
int n;
scanf("%d", &n);
printf( "%d\n", f(n) );
return 0;
}
解答方法如下
int f(int i) {
if(i==0){ return 100; }
else{
if(i%2==0) return f(i-1)-i*i+i;
else return f(i-1)+i*i-i;
}
}
详细题目请下载下方链接:
C语言练习题-費波納契數列(數學題計算).pdf
https://download.csdn.net/download/weixin_40441194/12631650