C語言問題,乙個C 語言問題

2022-09-25 23:25:03 字數 1288 閱讀 4920

1樓:匿名使用者

以後樓主要注意自己c語言程式的書寫格式,這樣也有助於我們分析你的題目,幫你解答。我給上訴的題目重新編了正規的格式,應該跟你要表達的意思相同。

#include

void main()

幾個知識點!

第一:這裡你要懂得for語句的組成方式,和執行順序。

for的組成方式為:for(表示式1,表示式2,表示式3)

for的執行順序:先執行表示式1,再執行表示式2,然後執行for下面帶的語句,執行完後再執行表示式3,然後再執行表示式2,知道又表示式2不成立的時候則停止迴圈。

第二:i--,是先使用一次i,然後再使它的值自加1,記住要先使用。

現在可以分析你的題目了。

首先由表示式1:i=0,然後表示式2:x>8,很明顯這裡x=10 肯定大於8,所以成立,執行下帶語句,輸出x--,因為要先使用一次x才能實現自減,所以先輸出x=10,然後使它的值變為x=x-1=9;然後輸出y=10;

接下執行表示式3:y=++i,得到y=1;

然後再執行表示式2:x=9大於8,所以成立,執行下帶語句,同上有輸出x=9。然後使x=x-1=8;再輸出y=1。

然後執行表示式3:y=++i,得到y=2;

由於x=8不大於8所以條件不成立。停止迴圈。

綜上;輸出結果為 10 10

9 1

這麼詳細,希望樓主可以明白!

2樓:匿名使用者

main() //第1行//第6行

此程式關鍵在於for迴圈的執行。

第一次迴圈:

執行括號裡「i=0;i>8」後,馬上轉到第5行執行。

此時「x- -」表示式值為x減之前的值10,「y」為10;(而此時x的值為9)

第二次迴圈:

第一次執行完第5行後,程式跳轉到「y=++i)」,等號右邊的「++i」的值為1,將1賦給y,然後判斷「x>8」是否成立,由於x=9,所以成立,馬上執行地5行語句。x=9,「x- -」表示式的值為9,y為1。

綜上,輸出結果為:

10 109 1

3樓:

for迴圈,判斷條件x>8成立,列印x,y 。x--代表的意思是首先做語句後,x在減1.

結果是 10 10 ,執行後x的值9,執行語句y=++i,y此時是1,++i代表的意思與i++是不同的,++i首先自己加1然後賦值給y,而i++代表是首先把i賦給y,然後i在自己加1。此時x是9,y是1 ,判斷條件x滿足要求列印,9 1.

此後x變成8 ,判斷條件不滿足 退去迴圈。

c語言問題,乙個c語言問題?

gcc是乙個著名的編譯器,屬於gnu編譯器套件,可以編譯很多種語言,一般用於編譯c c 程式,是linux下常用的編譯工具 編譯器只能說是一種翻譯 的程式,我們所熟知的dev c vs等其實屬於ide 整合開發環境 ide一般指包括了編譯器,編輯器等多種功能的軟體,功能比編譯器更加強大 linux下...

C語言問題,乙個C語言問題

4?結果是m 6吧 i 1,j 3時,if條件不成立m 3 i 1,j 2是,if條件不成立m 6 i 1,j 1,時,if條件不成立m 6 i 2,j 3時,if條件成立,執行break,顯示內層迴圈結束返回外層迴圈 i 3,退出外層迴圈 輸出m值6 i 1j 3i j 3 m i j m 3 j...

另C語言問題,另乙個C語言問題?

include int fun int a int main c語言 可以在乙個函式中定義另乙個函式為什麼不對?語法規定,這是不對的,如果那麼做會出現編譯錯誤。函式是用來呼叫並實現某種功能的。作為一種方法,函式是獨立的。正是因為這種特性,才把一些特殊的 常用的方法抽取出來封裝成乙個個的函式。因此把乙...