1樓:
有點複雜,演算法比較亂了點:在第一次呼叫函式int f()的時候a 還是等於4的,因為第一次n==0,所以a = 6; 然後自加一次,到返回的時候a==7了...第二次呼叫的時候走的演算法差不多,不過是走的else而已...
你去分析下呢?
順便說下:這個寫程式的可能是我們公司某個同事的徒弟??明明我們一個700多行可以實現功能的程式他能寫出6000多行來???我看不懂他的了
2樓:匿名使用者
請不要花哨的寫**,在軟體公司這樣好象並不是十分歡迎.你寫的**必須好讀,就是可讀性很好.我看不出來.所以,我不看了
3樓:
1) main函式中 s=a ; a為外部變數(a=4)2) 第一次呼叫 f(0):
..f函式中 動態變數 t=0, 靜態變數 a=5..n=0 執行 else語句 :
..局域變數 a=7, t+=a++; (t為 7 )..return t+a++; 返回 12(7+5), 靜態變數a變6
3) 第二次呼叫 f(1):
..n=1 執行 局域變數 a=6, t+=a++; (t為 6 )..return t+a++; 返回 12(6+6), 靜態變數a變7
4) s的結果為 28 (4+12+12)
4樓:小海鬼
嚴重同意
雖然這樣好像用盡了c的靈活,但c的靈活不應該體現在這方面。
無論多麼高手 履這個程式的邏輯花費的時間是不可忽略的。
!!這麼寫程式的就應該拖出去打!! ^_^ 上面這位師兄很有家長風範
5樓:匿名使用者
…………看了一眼源程式,頓時無語了。
c/c++語言的很重要的一點就是程式的可讀性和易讀性。
並且作為一個合格的程式設計師,應該讓自己的程式**保持整潔。
呵呵,異常同意一樓同學的說法~~~
我本人是在澳大利亞學習it的,老外們十分看重程式書寫規範、整潔、簡介這幾點。有時候他們總跟我們說要"no rubbish in your codes."~~~
6樓:匿名使用者
!!這麼寫程式的就應該拖出去打!!
c語言高手請進,C語言高手請進
一共5個非0字元。ab 066 xad9 結果是5啊 樓上已經說的很清楚了 066 八進位制數轉義 xad 十六進位制數轉義 加上a b9一共就5個啊 不過理論上是沒有問題 為什麼我幫你在 tubor c 3.0中執行卻會報錯呢 我很鬱悶啊 你需要搞清楚轉義字元的含義,ab 066 xad9 中一共...
C語言高手請進
你自己去書上看一下各運算子號的順序!呵呵 z y x 1 0 是0 z y x 你弄錯了吧,printf x 2?d d n x 你打錯了吧 a bre hi y bou n 是a re hi y bou後還有一換行符 printf d d n x,y 你有沒有弄錯啊 x,y 這個過號應該沒的啊!是...
請教c語言高手,請教C語言高手!
char c 指標陣列,陣列的每個元素是指標,這裡存常量字串的首地址。char cp 二級指標陣列,陣列每個元素是二級指標,這裡存了c 3 c 2 c 1 c 0 的地址,也就是上面字串順序逆序 char cpp cp 指標指向cp陣列首地址。ps,一般 指標在正常的程式裡不會出現,容易形成非常混亂...