1樓:定散知鹹傲笑
main是i的從0到4的迴圈,每加1呼叫一次f(i)。
f(i)返回值為k。由於k為靜態變數,所以每次進入f(i)時,k的值是上次執行完f(i)之後的值,而並沒有被 static in k =1 置為1。
這樣程式執行過程就是
i=0 k=1;
i=1; k= 1(k的上次執行完的值)+1;
i=2; k = 2(k的上次執行完的值)+2+1;
i=3; k= 5(k的上次執行完的值)+3+2+1;
i=4; k= 11(k的上次執行完的值)+4+3+2+1;
所以最後的結果就是 1,2,5,11,21
2樓:
輸出的是1 2 4 6 11
計算區間1到i自然數加法的
3樓:喻元愷
支援,計算區間1到i自然數加法的
4樓:匿名使用者
就是輸出5個f(i)的值。
而f()是乙個函式,他每次都會呼叫
int f(int i)
每一次呼叫,f(i)的值都有k來返回,也就是f(i)=k;注意到,k是靜態儲存變數,每一次點用結束後,k還保留他上次的值,所以到下一次呼叫f()函式的時候,k不會被重新初始化,k的值是上一次呼叫的時候的值。
所以結構應該是:1 2 5 11 21
關於這段程式的兩個問題,關於這段程式的兩個問題
1.為什麼s作為私有資料這裡可以通過s1訪問 每個類都維持著自己的乙個類域 而成員函式本身的定義就屬於這個類域 成員函式擁有訪問該類的公有成員和私有成員的特權 就是說對成員函式的訪問許可權是定義在類的範圍而不是物件的範圍,成員函式可以訪問該類所有的資料成員 不論它們屬於哪個具體的物件 2.s3 s1...
這段matlab的程式是什麼意思啊
ts 0.001 sys tf 5.235e005,1,87.35,1.047e004,0 構造連續時間傳遞函式模型 dsys c2d sys,ts,z 把上面的連續時間傳遞模型轉換為離散模型 num,den tfdata dsys,v 該離散模型的分子分母多項式係數。這段matlab程式是什麼意思...
這段c語言程式輸出末尾有亂碼,是什麼原因
void main void 改法,把陣列定義成b 4 並初始化如 char b 4 為了規範 在給b賦值時 for i 0 i 3 i 這個主要是對字元 串的結尾標誌沒理解,字串要再最後加乙個0 表示字串結束。a 儲存了 asdf0 我輸入的是asdf在回車,0是系統自動加入 for i 0 i ...