有以下程式:
#include
fun(int x, int y)
main()
執行後的輸出結果是( a )。
a) 5, 11
b) 5, 5
c) 11, 11
d) 11, 5
i+=m+1含義為:i=i+m+1.第一次呼叫子程式fun時,賦值得:x=j=1,y=m=1.而子程式裡m=0,i=2.所以
執行i+=m+1得 i=3; 執行m=i+x+y得 m=5. 同時返回值m=5,即把5賦值給fun,即k=5,輸出k=5.在這次呼叫中x、y值沒改變,所以fun(j,m)中的j、m值不變。
第二次呼叫fun時,賦值還得:x=j=1,y=m=1。而此時,因m、i為static型變數,即靜態變數,它們保持上次執行結果即m=5,i=3,通過運算的m=11.
要考計算機二級的同學刷題的時候遇到這道題,問我。我居然也懵了。欸,我這專業課學得也太辣雞了……
扎心了~~~
一道static型別筆試題
includeint fun int tmp static int loop 20 static int count 5 int tmain int argc,tchar argv return 0 程式輸出結果 當時看完程式我給出的答案 local static 那一列全是29,而global那一...
記錄一道C語言題目
很簡單的乙個題。磨磨腦子,最近有點手生。題目 統計各位數字之和是5的數 本題要求實現兩個函式 乙個函式判斷給定正整數的各位數字之和是否等於5 另乙個函式統計給定區間內有多少個滿足上述要求的整數,並計算這些整數的和。我講得可能不算很清楚,具體請檢視題目鏈結 實現 include include def...
一道C語言的問題 II
fj haozi description haozi很淘氣,最近fj帶了很多好吃的,haozi乘fj不在的時候就吃了很多好吃的,fj回來發現了,決定一定要抓住haozi。但是haozi很聰明,假設原來他在16號樓,那麼下一分鐘必定是在15號樓或者17號樓.如果他一開始在1號樓,那麼下一分鐘只能在2號...