C語言小問題,C語言一個小問題

時間 2022-05-19 12:35:02

1樓:

儘量不要使用這樣的**,因為不同編譯器可能會得到不同的結果。

上面是逗號運算子,從右向左進行!

結果:n-- 先使用,即輸出1,再減1

++n 這時 n=0,加1,使用,即輸出1n++,先使用,即輸出1,再加1

printtf()

語句結束後,n=2

2樓:匿名使用者

c語言的輸出運算是從右向左運算的,但是輸出形式是從左往右!

所以先計算n--,此時輸出1,之後n--變成0;

再計算++n,此時輸出1,n也變成1了

再計算n++,此時輸出1,之後n加1變成n=2整個輸出從左往右 為1 1 1

3樓:

很簡單,首先你得明確n++和++n的含義

n++,可以分解為這兩步,n=n,然後n=n+1;而++n應該分解為這樣的兩步,n=n+1,然後n=n。

也就是說,n++是先使用n的原先值,然後n的值再加1;而++n的操作洽洽相反

4樓:匿名使用者

printf函式引數是以後往前看的

先計算n--,得到第三個引數為1,n變為0隨後計算++n,得到第二個引數為1,n變為1最後計算n++,得到第一個引數為1,n變為2

C語言小問題,C語言一個小問題

區別 一個是指向結構體變數的指標,一個是指向整形變數的指標。詳細說明如下 struct student p指向結構體變數的指標 struct 結構體名 結構體指標變數名 執行結果 int p變成了指向整形變數的指標 編譯執行 錯誤 不同的變數型別,p並不屬於整形變數類指標。 你.是不是諶衛軍老師班上...

C語言小問題,C語言一個小問題

這個問題的關鍵在於 if k n printf n 這句話。因為只要執行了if n j 後面的複合語句。k n一定成立。k 到k n時,不滿足k 其實去掉if k n 光保留printf n 同樣能得出上面的結果。既然你不想要最後一句的 n。那不妨這樣一改就可得到你想要的 把if k n print...

C語言小問題,一個C語言小問題

首先你的懂得if 的括號中的東西是用來判別的,所以裡面的東西要麼為真,要麼為假,但在c中代表真假就是1和0啦!所以這裡的if 0k2 ok2是個變數,如果它的值為0,即就是假,那麼不執行if下帶的語句,跳過執行其它語句,如果ok2的值為1或者 1,那麼執行if的下帶語句,即a 10.至於你的if o...