1樓:認真答卻總被刪baidu我憑什麼同情你
首先,我們有兩個變數a和b,分別被賦值孫衝為-1和1。接下來,我們分析if語句的條件:
a<0: 在這個條件中,我們先對a進行自增操作,即a的值從-1變為0。然後,我們比較a的值是否小於0,結果為false。
b--<0: 在這個條件中,我們先比較b的值是否小於磨春等於0,結果為false。然後,我們對b進行瞎凱耐自減操作,即b的值從1變為0。
由於if語句的條件是乙個邏輯與操作(&&只有當兩個條件都為true時,整個條件才為true。在這個例子中,第乙個條件為false,所以整個條件為false。
根據c語言的短路求值規則,當邏輯與操作的第乙個條件為false時,整個表示式的結果已經確定為false,因此不再計算後面的條件。也就是說,這裡的(b--<0)不會被執行。所以,b的值仍然為1。
因此,程式將執行else語句中的printf("%d%d",b,a)。此時,b的值為1,a的值為0。所以,列印的結果是:
2樓:yx陳子昂
如果語句執行前a=-1,b=1
那麼看茄巧具體的if語句的執行順序:
先執行左邊的 (+a<0)
a是先執行自增,a = 0,再進行判斷顫帆鍵 a<0,結果是false;
if是兩個邏輯表示式的「與」 &根據&&的真值表轎巖,如果有乙個值為false,那麼結果一定是false。
因此,程式在此情況下不會執行第二個邏輯表示式b--<0.
直接進入else 分支,列印出的是b,a的值,也就是 1 0
3樓:紫薇參星
對這個悉譽c語言題的值的解釋見激鎮圖睜鉛段。
c語言題目求解
4樓:聽不清啊
這是分別用八進位輸出兩個值。問題是這二個數不一樣。
int m=0256,n=256;
這裡m是八進位,n是十進位256,轉為八進位是400所以,執行後的輸出結果是:
c)256 400
c語言題目求解
5樓:匿名使用者
哈哈哈哈哈哈哈哈,隔~
C語言程式設計,這題怎麼做,C語言程式設計,這題怎麼做?
1判斷是否是單數,單數則返回 1,無法雙等分。2.使用氣泡排序法。直接將陣列進行排序。3.既然b i a i 申請記憶體空間型別為int 長度為data的一半。一個為int a,int b.4.迴圈遍歷data,注意這裡是排序之後的了。將偶數位置的賦值給a i 將奇數位置的賦值給b j i,j初始化...
這個c語言怎么來的結果,這個c語言怎麼來的結果
樓主肯定是把它當函式用了...
c語言函式部分的題,C語言函式部分的題
include include void transf int p 10 int m int main transf a,n for i 0 i return 0 int i 0,j 0 索引變數 int n,a n是維數,a是二維陣列名printf 請輸入矩陣維數 scanf d n 使用者輸入維...