有如下程式maininty3,x3,z

2021-03-03 21:05:49 字數 2139 閱讀 4742

1樓:匿名使用者

3 3(++x,y++)為逗號表示式輸出的會使y++;

但y++時,y還是3,等下一條語句開始才變為4;

z+2=3;

有段c語言程式、求輸出結果:main()int y=3,x=3,z=1;printf("%d%d\n",(++x,y++),z+2);求執行結果,多謝

2樓:楊兵

答案是:3 3

輸出的值y++和z+2兩個數的值

其中(++x,y++)只能輸出一個值作為%d輸出,(++x,y++)中包含「,」運算子,它的運算規律是從左至右執行,所以輸出的值只能為y(值為3),然後再進行y++運算

下一個%d的值為z+2(值為3)

執行結果為:3 3

樓主可以在編譯環境中試一下下面的程式,就知道答案的正確性了:

#include

void main()

3樓:匿名使用者

3**rintf("%d%d\n",(++x,y++),z+2);

第一個%d輸出時,是(++x,y++)的值,裡面有個逗號,逗號是輸出最右邊的,所以應該是輸出y++;y++時,先取再加,就是先輸出y,再自增1,所以第一個輸出3

第二個就容易了,就是輸出z+2,也就是3

void main() { int y=3,x=3,z=1; printf("%d%d\n",(++x,y++),z+2); } 輸出的結果為什麼?求詳細解及思路

4樓:匿名使用者

3**rintf("%d%d\n",(++x,y++),z+2);

第一個%d輸出

時,是(++x,y++)的值,裡面有個逗號,逗號是輸出最右邊的,所以應該是輸出y++;y++時,先取再加,就是先輸出y,再自增1,所以第一個輸出3

第二個就容易了,就是輸出z+2,也就是3

5樓:毒硫酸

c語言提供一種特殊的運算子,逗號運算子,優先順序別最低,它將兩個及其以上的式子聯接起來,從左往右逐個計算表示式,整個表示式的值為最後一個表示式的值。如:(3+5,6+8)稱為逗號表示式,其求解過程先表示式1,後表示式2,整個表示式值是表示式2的值,如:

(3+5,6+8)的值是14,a=(a=3*5,a*4)的值是60,而(a=3*5,a*4)的值是60,

a的值是15。

a++表示先把a的值代入函式再令a+1,++a表示先令a+1再代入函式

不用多說了吧

6樓:

輸出33。z+2==3,(++x,y++)是逗號表示式,只取最後一個y++,後++取值後才執行,所以兩個都是3。

7樓:

輸出 33

逗號表示式的值為最右邊的值,所以(++x,y++)的值為y++,等於3,因為++操作在計算之後才進行。

z+2 = 1+2 = 3

所以最終的結果為33

有以下程式main(){intx=3,y=3,z=3;printf("%d%d\n"(++x,y++),++z);}輸出結果().

8樓:匿名使用者

正確的程式如下bai:du

main()

錯誤在:intx=3這裡x前缺少一個zhi空格,dao應該是int x=3

...%d\n"(++x 這裡(的前回邊缺少一個逗號「,」

把錯誤改過來答程式就ok啦,輸出結果34

9樓:匿名使用者

34(++x,y++) 逗號表示式 是最後一個表示式的結果,即y++, 因為在右邊,執行結束後,值才改變

++z 因為在左邊,執行時值就改變

#include main( ) { int y=3,x=3,z=1; printf("%d %d\n",(++x,y++),z+2); } 答案為什麼是3 3

10樓:巴扎嘿

輸出的值分別是(++x,y++)和z+2

(++x,y++)這個是一個逗號表示式,返回值為最右邊表示式的值。所以返回的值為y。

z+2就是3

所以輸出為3 3

這個主要考的是逗號表示式返回值

以下程式執行後的輸出結果是mainint a,b,c a 1 b 3 c 5 printfd,d na,b

結果是3,10啊。這主要是由於自增操作符 前置還是後置決定的,比如說 a,就是先自增再使用,而a 就是說先使用再自增。執行printf d,d n a,b a b c 這條語句的過程中,a 2 就是說已經自增了 b 3 還沒自增 等這條語句執行完之後,那麼a 2 b 4 我執行了下,結果是3,10 ...

5 若有如下說明 int a 101,2,3,4,5,6,7,8,9,10char b a ,d,e則數值為4的表示式是

答案是c 分析 a a 4 實際上是5 b 因為d沒有初始化,所以a d b 值無法確定c d b等於3,a 3 的值為4d 因為e沒有初始化,所以a e b 值無法確定 c陣列為4也就是陣列第四個元素,而陣列索引是從0開始的,也就是索引值為3的陣列元素為4,d b等價於 d a 值為3 所以選c ...

北京市奧運期間交通是否有如下規定

能北京市 釋出 關於2008年北京奧運會殘奧會期間對本市機動車採取臨時交通管理措施的通告 從7月20日起至9月20日,本市機動車將分單雙號行駛。限行期間公車將停駛七成。儘管實行單雙號的車輛停駛時間實際僅為1個月 部分機動車不受單雙號行駛措施限制,准許在本市行政區域內道路行駛。包括警車 消防車 救護車...