1樓:匿名使用者
3**rintf("%d%d\n",(++x,y++),z+2);
第一個%d輸出
時,是(++x,y++)的值,裡面有個逗號,逗號是輸出最右邊的,所以應該是輸出y++;y++時,先取再加,就是先輸出y,再自增1,所以第一個輸出3
第二個就容易了,就是輸出z+2,也就是3
2樓:毒硫酸
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再代入函式
不用多說了吧
3樓:
輸出33。z+2==3,(++x,y++)是逗號表示式,只取最後一個y++,後++取值後才執行,所以兩個都是3。
4樓:
輸出 33
逗號表示式的值為最右邊的值,所以(++x,y++)的值為y++,等於3,因為++操作在計算之後才進行。
z+2 = 1+2 = 3
所以最終的結果為33
void main() {int y=3,x=3,z=1; printf(%d %d\n,(++x
5樓:匿名使用者
這裡 (++x,y++), 被整體用括號括起來了,所以這個是被當做一個元素處理的。
中間的逗號不是內printf引數分隔容的作用,而是形成了一個逗號語句。
這樣 它的值就是逗號語句定義的,最後一個元素的值。即(++x,y++),在輸出上,等效於y++所以輸出的是3,3
6樓:匿名使用者
(++x, y++)這整個是一個
bai逗號表達du式,逗號表示式的運zhi算規則是從左往右依次dao計算,並返回最回後一個表示式的值,所以返回輸出答的是y++這裡++放在了y的後面,所以是先輸出y,再進行y=y+1運算,所以最後是輸出3 3
有段c語言程式、求輸出結果:main()int y=3,x=3,z=1;printf("%d%d\n",(++x,y++),z+2);求執行結果,多謝
7樓:楊兵
答案是:3 3
輸出的值y++和z+2兩個數的值
其中(++x,y++)只能輸出一個值作為%d輸出,(++x,y++)中包含「,」運算子,它的運算規律是從左至右執行,所以輸出的值只能為y(值為3),然後再進行y++運算
下一個%d的值為z+2(值為3)
執行結果為:3 3
樓主可以在編譯環境中試一下下面的程式,就知道答案的正確性了:
#include
void main()
8樓:匿名使用者
3**rintf("%d%d\n",(++x,y++),z+2);
第一個%d輸出時,是(++x,y++)的值,裡面有個逗號,逗號是輸出最右邊的,所以應該是輸出y++;y++時,先取再加,就是先輸出y,再自增1,所以第一個輸出3
第二個就容易了,就是輸出z+2,也就是3
有如下程式 main() {int y=3,x=3,z=1; printf("%d %d\n",(++x,y++),z+2); } 執行該程式的輸出結果是 a.3 4
9樓:匿名使用者
3 3(++x,y++)為逗號表示式輸出的會使y++;
但y++時,y還是3,等下一條語句開始才變為4;
z+2=3;
有如下程式 main0{int y=3,x=3,z=1;printf(「%d %d\n」,(++x,y++),z+2);} 答案為什是3 3
10樓:匿名使用者
這是逗號
表示式bai的用法,在逗號表示式du中,總體的值是逗zhi號後面那個dao
式子值,比如a=(5,6),a的值應該是專6;
上面式子中(++x,y++)相當於y++,那個屬 printf語句其實跟printf(「%d %d\n」,y++,z+2)效果是一樣的.後面那個3就是1+2=3
#include
11樓:留在楓樹
我來給你詳細說說:
(++x,y++),這是逗號表示式,先執行++x,然後執行y++;結果取逗號後面表示式的值,也就是y++的值。y++的值為3,因為這是後加表示式,如果是前加++y的話,值就是4;
z+2的值是1+2=3;
所以結果輸出是3 3
12樓:
1 本題考查的是逗號表示式知識點,逗號表示式的值是最後一個表示式的值。
2 (++x,y++)這個逗號表示式的值是最後一個表示式y++的值,而y++的值是3。
3 程式最後輸出:33
4 第一個3是(++x,y++)這個逗號表示式的值,第二個3是z+2這個表示式的值。
13樓:cc暖調調
首先哦 printf 那個語句少了個分號~printf是個輸出語句 輸出這個%d%d\n\n是換行
第一個%d指(++x,y++)這個的值 括號是為了區分。重點是 逗號運算。 它 第一步 先把++x的值算出來,從左到右先+1再用x 所以最後++x的值是4。
第二步 把y++的值算出來 從左到右 先用y再+1. 所以y++的值是3。 第三步 把y++的值賦給%d 。
所以第一個%d的值是 3。
第二個%d 1+2=3 所以也是3.
最後輸出 33
14樓:蘇東坡的哥們
輸出(++x,y++)和z+2的值,其中(++x,y++)就是輸出y的值,y++就是先輸出y再自加1,++y就是加1在輸出y,x沒他什麼事;
#include
15樓:匿名使用者
printf執行結果為 3 ,3
第二個%d 是z+2 為3
第一個%d 是 (++x ,y++)表示 先執行 ++x , x變為4 ,然後輸出 y 的值為3 ,在執行 y++ ,y 為4;
16樓:匿名使用者
輸出的時候將兩個%d依次被(++x,y++),z+2代替%d表示輸出int型資料值
\n表示換行
你再不懂我也沒辦法了。。。
17樓:匿名使用者
這麼簡單也不會,把基礎打好去吧!!
#include
18樓:智慧教室
逗號運算子,只取最後一個引數,(++x,y++)其實就是y++,z+2=3,其中++x的值為4,y++的值為3,x,y的值都為4
A 2x3x3x5,B 2x2x3X7,A和B的最大公因數是最小公倍數是
2 3 6 最大公因數是6 3 5 2 7 2 3 1260 最小公倍數是1260 6,2.3.5.3.2.7 如果a 2x3x5x7 b 2x3x3x5那麼a和b最大公因數是 最小公倍數是 如果a 2x3x5x7 b 2x3x3x5那麼a和b最大公因數是 30 最小公倍數是 630 最大公因數,也...
解方程 3 x 210 x ,解方程 3 x 2 10 x
3 x 2 10 x 2 5 3 x 2 10 x 2 5 x 2 x 2 3x 6 10x 20 5x 20 5x 13x 6 0 5x 2 x 3 0 x1 2 5,x2 3 經檢bai驗du 都是zhi 方程dao的版根權 3 x 2 10 x 2 5 兩邊同時乘以 x 2 x 2 可以得到3...
2x 3 x 3這個方程怎麼解?
你好 2x 3 x 3 解2x x 3 3 x 6這道題考察的是移項合併同類項。我幫你答題,你幫我。你的肯定是我的動力。你的支援鼓勵我繼續前行。如果還有其他的問題。請點選我的頭像向我提問。您好 2x 3 x 3 2x x 3 3 x 6 如果你認可我的,請及時點選 為滿意 按鈕 手機提問者在客戶端右...