一道C語言題目,可以幫忙解釋一下解題過程嗎

時間 2021-10-14 22:40:07

1樓:西方慘敗

對的,static變數只初始化一次,然後它的資料就一直儲存在記憶體中,直到程式結束。

因此,當a==2時,c=a+c++=2+0=2,c自加1,則c==3.a++以後a==3,此時函式裡c=3,於是c=a+c++=3+3=6,c自加1,於是c==7

2樓:

c = a + c++; 中先c = a + c; 然後c++;

k = f(a++)呼叫兩次

第一次k = f(a++)時傳入2, c = 2 + 0; c++ = 3, a = 3;

第二次k = f(a++)時傳入3, c = 3 + 3 = 6; c++ = 7

3樓:匿名使用者

第一次迴圈

迴圈前 a=2,c=3(2+0,然後自增1) k=3迴圈後a=3

第2次迴圈

迴圈前 a=3,c=7(3+3--因為是static所以第一次迴圈的3保留值,然後自增1) k=7

迴圈後a=4

4樓:匿名使用者

第一次執行到f(a++)是,a=2

進入函式,c=0;

c=a+c=2

c++return c=3;

f(a++) a=3

c=0;

c=a+c=3

c++return c=4

兩次結果相加=7

5樓:du管家

這裡的static定義,相當於定義乙個函式外變數,可能你不得不理解關鍵字:static.

ps.使用中最好指定c的型別,指定函式f的返回值型別

:>

main函式:

迴圈:i=0時:a=2 ,進入f函式,c=0 ,運算:c = a c 改變c的值,c=3跳出函式f,進行a 操作,a = 3 ,k = 3

i=1時:a=3 , 進入f函式,c保留上次結果 即,c = 3 運算:c = a c 改變c的值,c=7 跳出函式f,進行a 操作,a = 4 ,k = 7

列印k值: 7

6樓:

是的,static變數僅初始化一次,下次在遇到static c=0; 時,c不會重新賦值為0,而是上次c的值,這就是靜態變數的特點

7樓:匿名使用者

我怎麼算 得8呢?

哈哈!!···················看來西方慘敗答對了

想你學習!

8樓:砍侃看

主要問題出在兩個++上,因為有兩次迴圈,第一次計算後c=3,第二次計算時a加一變為3,經過c=a+c++後結果就為7了,因為c再次加一

9樓:冼碧螺

就是6++(--)字尾等價於在執行問該語句後,變數自增1

10樓:匿名使用者

我算了半天 不清楚哦

一道c語言題,誰能幫忙解釋一下各過程的作用啊,謝謝

11樓:匿名使用者

結果是c)1;分析是和fscanf()有關:

從乙個流中執行格式化輸入,fscanf遇到空格和換行時結束,注意空格時也結束。

所以只輸出第乙個數字了。

12樓:匿名使用者

把1 2 3寫到檔案裡,再讀乙個整形的數出來

一道c語言程式設計選擇題,請說明解題過程,謝謝。

13樓:匿名使用者

正確的答案應該是b。a的錯誤在於:在=的左邊不能有其他的運算子,連等是可以,如:

x=y=5;b是正確的,在標準c中,其實是沒有定義邏輯型別的(通常也叫布林型),而是採用0代表false(假),用非0代表true(真)。同時,邏輯運算的結果false是0,true一般是-1(所有位全為1),所以是可以將邏輯運算的結果賦給整型變數的,這裡x=-1;c是錯誤的,c語言中顯示轉換應該是(float)x。d的錯誤是%(模運算)只能用於整型。

14樓:匿名使用者

a錯 不允許有連等於,(其實那個「=」是賦值號,把它右邊的值賦給左邊)

b錯 因為已知y=3,所以y==1這個布林判斷即為false,把布林值賦給整型(題目說x是int整型的),所以錯。

c正確 將整型的x強制型別轉換為單精度float型,再賦給i正確的 因為i是float型的

d錯 題目中i沒有賦初值,不能用來計算 。

回答完畢!!

請幫忙解釋一道選擇題,請幫忙解釋一下題目

應該說,v ing表示主動語態,v ed表示被動語態。本句中,主語是the situation,是物,只能做被動,因為 look at in this way,先拋開形態不說,the situation不可能 look at.to 不定式,表目的。句中沒有此意。when the situation ...

c語言請大神幫忙看看解釋一下題目謝謝

回憶在上輩子 第七題選c if中如果a大於b就讓a b,b c 逗號運算子 而a是不大於b的所以這個不執行 所以結果是10 50 10 第九題b和d你都沒選我就不說了 c switch中x是float型別資料c語言中這裡是不能使用float資料的 為什麼?這是gui定 第十一題 第一次執行switc...

這是一道關於c語言的題,求高人詳細解釋一下為什麼第8道題b不

魏天偉 第六題 輸入的時候,格式要與 間的格式一致,因此中間加了逗號的不對 第七題 這是一個結構體的題目,初始化時,每兩個元素賦值給一個元組,因此初始化了四個元組的,輸出的時候啊a 2 age輸出的是第三個元組的age,也就是16,a 3 name 2輸出的是第四個元祖的name元素 zhang 的...