1樓:匿名使用者
++x 是
在本句中先將來x的值+1,然後
使用自+1後的值
y++ 是先使用原值,然後在以後使用+1的值這樣在printf語句中 ++x即 4, y++為3但是(++x,y++)是一個表示式,只能有一個值,這個值是3,因為取的是逗號運算子後的值作為整個表示式的值(逗號運算子的性質如此)
而z+2則作為臨時變數值顯然是3
所以出來了3,3
2樓:
很簡單 z+2 很顯然是3 ++x 輸出的話應該是4 先+後引用
y++先引用後+1 當然是3
(++x,y++)這個是一個表示式 (x,z,s,d,e)表示式值是最後一個e
c語言運算子與表示式基礎題
3樓:夕心木
printf("%d",--y); 是y現自減自在輸bai
出yy=9 條件成立, y自減 輸出8
再執du行for裡的zhiy-- y變為7再次dao判斷 if條件不成立
再執行for裡的y-- y變為6
再次判斷 if條件成立 y子減 輸出5再執行for裡的y-- y變為4
再次判斷 if條件不成立
再執行for裡的y-- y變為3
再次判斷 if條件成立 y子減 輸出2再執行for裡的y-- y變為1
跳出迴圈
4樓:蓉雪球
9>0 9%3==0
8(成立則輸
bai出du)zhi
dao8>0 8%3!=0
7>0 7%3!=0
6>0 6%3==0
5(成立則輸出)
5>0 5%3!=0
4>0 4%3!=0
3>0 3%3==0
2(成立則輸出)
2>0 2%3!=0
1>0 1%3!=0
0跳出專
由於不換行屬,就輸出852
5樓:追雨的流星
在for迴圈裡,終止條件是y=0, 迴圈條件是y--則進入迴圈體時,y分別等於9, 8 ,7, 6, 5, 4, 3, 2, 1
此時看內if語句容,y%3==0;即y正好被3整除 則y分別等於9 , 6, 3
此時輸出--y;
先運算再輸出,則輸出結果為8 5 2;
6樓:抽空記憶
給y賦值9,進入baifor迴圈,這個迴圈的範圍為du
zhifor(...)if()print("%d",--y);如果迴圈語句多餘1句可以加{dao};第一專
次,y=9,y%3==0(這裡是對y求餘讓後判斷屬y是否為0),輸出--y,也就是8(這裡說下y--和--y)的區別,就像這裡面,在for中y--也就是先取y的值9,然後y減去1得到8,但這後面的y還是9;在printf中的--y為先減去1,再取y的值,前面說過y還是9,所以減去1後再取值為8,輸出就是8;進入的二次for,由於y--,後面的y還是8,而8%3!=0,所以不輸出;第三次同樣不輸出;以此可以得出結果
7樓:第101套婚紗
y=9時,滿足條件,輸出--y ,--y就等於8,這時y=8,第二層迴圈滿足時是y=6,輸出--y 就是5
8樓:風中帆動
8,5,2,因為輸出後先施行減減
c語言運算子和表示式
9樓:一顆程式猿
#include
int main()
c語言條件表示式問題,C語言中條件運算子是什麼意思
a 當exp值為1時,exp為0,exp 0的值為1.當exp值為0時,exp為1,exp 0的值為0。b 當exp值為1時,exp!0的值為1.當exp值為0時,exp!0的值為0。c 當exp值為1時,exp 1的值為1.當exp值為0時,exp 1的值為0。d 當exp值為1時,exp!1的值...
c語言移位運算子怎麼用,C語言移位運算子怎麼用?
這是c 好吧。算了c和c 的移位運算子都一樣 這個難道不對嗎,左移就是 2啊 不越界的話 原理就是你把1110化成二進位制 000010001010110 然後每個位都向左移一位,最低位補0,次高位捨棄 最高位是符號位,不能動 x 1 相當於乘以2 假如 x 8,對二進位制來說就是00001000,...
c語言關於運算子的問題
在前九先執行j後在加,比方j 1 1 j 則先是1 j,當然1 j 2了,然後是執行j 這時j 2了,如果是1 j j的話,結果就改是1 1 2 4了,你推敲下是不是這樣 int m,j 5,t t j j j j 6 6 8 8 這裡我用vs2005編譯的是28,9,和你的26,9部一樣,這個可能...