c語言問題

2022-12-08 04:21:11 字數 769 閱讀 5462

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,這時...