C語言初級

時間 2022-06-01 10:30:05

1樓:匿名使用者

從左到右求值:

首先看括號裡面的:

1) b/a * 2.0 == (b/a) * 2.0 == (3/2) * 2.0 == 1 * 2.0 == 2.0 // 3/2整型相除,結果為去掉小數點的整型部分

然後:2) 2.0 * a / b == (2.0 * a) / b == (2.0 * 2) /3 == 4.0 / 3 = 1.33333333

然後看比較運算子:

1)和2)的值代入比較運算子即:

2.0 > 1.333333 (比較結果成立,比較運算子結果是「真」

因為比較運算子的結果要代入算數運算,所以將「真」轉換為整型,結果為1,此時表示式可寫為:

1 + ++a - b--

此時a為2, 1 + ++a的結果是,a(此時為2)先自加1,然後a(此時為3)再跟1相加,結果為 4,此時表示式為:

4 - b--

先取出b的值,此時為3用以做減數跟被減數4運算,然後b自減,自減後b為2;此時表示式等效於:

4 - 3

因此,整個表示式的結果是1

2樓:

編譯器不通過

我分析:

對是+(++)a;先是算b/a*2.0結果為3.0000,再算2.

0*a/b結果為1.33333;3.0000>1.

3333結果邏輯真,值為1;然後是++a 因為是前加1,結果為3 減去後減的b結果為0 最後結果為1

3樓:匿名使用者

看成四個加號了……不好意思……剛剛打算做一下,突然發現那個大於號……表示》認識,->也認識,>用於比較也認識,但是用於計算……還真沒見過……不好意思了,這回糗大了……

初級C語言條件判斷問題

1 if x 1 x 3 y 1 y 3 x 1 x 3 y 1 y 3 x 1 x 3 y 1 y 3 x 1 x 3 y 1 y 3 2 if abs x 1 abs x 3 abs y 1 abs y 3 這個題自己做不出來就不要學c c 了 額。我也不懂啊 書才看點點 呵呵 等我會了告訴你 ...

C語言初級有以下程式段輸出結果是

for i 1 i 15 j 4 一定是給錯了,應該是for i 1 i 15 i 4 取4個值1,5,9,13 for j 3 j 19 j 4 m 會執行5次m 也就是m 5,j分別取3,7,11,15,19 兩個迴圈是巢狀關係,合計執行為4 5 20。 外層迴圈應該是 for i 1 i 15...

C語言問題,C語言問題C語言問題

選a首先,空格也是一種字元,b d選項分別把空格賦給了c1,c1 其次,c選項不完整,排除 不僅a這樣,10a20b也是可以的。 聽不清啊 答案a 10a 20b cr 是正確的。因為scanf d c 時,會忽略數字前面的空格,遇到非數字字元就會結束讀取 非數字字元會留待下一次讀取,即被後面的 c...