1樓:
首先指出一下你程式的錯誤。最下面是修改好的程式。
#include
int f(int t,int n);
main()
***********************************===
#include
#include
#include
#include
int f(int t,int n);
int main()
,s;s=f(a,4);
printf("%d\n",s);
}int f(int t,int n)//這個函式是用遞迴來求陣列t中前n個元素的和
我們想象一下這個遞迴的順序。
首先n==4,則 返回 t[3] + f(t, 3); 而f(t, 3)的值是多少呢,是t[2] + f(t, 2); f(t, 2)的值等於t[1] + f(t, 1); f(t, 1) 等於 t[0] + f(t, 0); f(t, 0)等於0(因為如果n<=0 返回0)。再返帶回去,得到的是
t[3] + t[2] + t[1] + t[0] +0;得解
2樓:倒霉熊
程式錯誤,根本不可能執行,沒有結果。
3樓:呼延冷雁
#include "stdio.h"
main()
else
printf("wrong");
} 逆序輸出的話用字串做比較好!
C語言問題,c語言問題
int a 4 void main int a 2 這種局 bai部變數,會du隱藏掉上一級 定義zhi的同名變數,下面dao 也是一樣回 中有效。所以上面的復合語句中,會輸出0,下面呼叫sub1時,實際上傳入的是main中的int a 2 又有a a 1,所以會輸出1,下面也是一樣的,main中的...
C語言問題,c語言問題?
include include include typedef struct nodelinknode,link void main link pa s int da int flag 0 pa head 讓pa指向頭結點 dowhile flag 0 link pb head pb pb next...
C語言問題,C語言問題,求助
while語句的執行順序 1.判斷x的值 非0為真,0為假 2.執行 3.執行 裡面的 這裡是空,所以沒任何動作。所以會一直迴圈到x 0,判定為假,迴圈終止。接著執行減減,最後列印結果為 1 c語言問題,求助 這題是迷惑人用的.因為迴圈內部沒有break,所以for會一直執行下去,直到a 11,這時...