1樓:匿名使用者
這是逗號
表示式bai的用法,在逗號表示式du中,總體的值是逗zhi號後面那個dao
式子值,比如a=(5,6),a的值應該是專6;
上面式子中(++x,y++)相當於y++,那個屬 printf語句其實跟printf(「%d %d\n」,y++,z+2)效果是一樣的.後面那個3就是1+2=3
1.有如下程式,執行該程式的輸出結果是 main() { int y=3,x=3,z
2樓:polaris北斗
1. 3 3
2. d
3. b
4.a5.d
6.d7.b
8.b9.對某些c語言編譯器,c和d都是對的,如果只有一個正確答案那應該是d
3樓:醉人雙魚
3 3d
badd bb
b45y=8 x=204
4樓:匿名使用者
3 3d
badd bb
b4522 84
void main() { int x=0,y=5,z=3; while(z-->0&&++x<5)y=y-1; printf("%d,%d,%d\n",x,y,z); }
5樓:匿名使用者
首先while迴圈
第一次:(3-->0 && 1<5)滿足條件 y=y-1 y=4 x=1 z=2
第2次: (2-->0 && 2<5) 滿足條件 y=y-1 y=3 x=2 z=1
第3次: (1-->0 && 3<5) 滿足條件 y=y-1 y=2 x=3 z=0
第4次:(0-->0)改語句不滿足條件,只執行0-- 所以z=-1
最後輸出結果為3 2 -1
6樓:瞭望
1:while迴圈,不寫括號表示內容只有一行
2:++、--放在變數前面(++x),表示先對變數進行自增1運算,再將變數更新後的結果作為(++x)這個整體表示式的值;而++、--放在變數後面(z--),表示先將變數原來的值本身作為(z--)這個整體表示式的值,再對變數進行自減運算
3:邏輯&&的結合性自左向右(導致短路問題),如果寫成while(++x<5 && z-->0),那x就是4了。
7樓:匿名使用者
結果是3,2,-1
條件是 z-->0 和 ++x<5
其中x=0,z=3
++在前面則先
+1 再參與判斷 --在後面則先判斷操作 再-1如果符合條件 ++x<5 則要迴圈 4次
z-->0 則要迴圈3次
則 執行3次
x=3 , y=2,z=-1
8樓:刀下之狼
-1z-- 後減的值是不會變的,z--的值一直是3,所以z-->0一直成立
++x 前加的值是會變的,4<5,所以程式執行4次
z自減4次,為-1
9樓:匿名使用者
z,x,y
1:2,1,4
2:1,2,3
3:0,3,2
4:-1,4,1
z最後是-1,當z為-1時中斷迴圈,我知道你以為z--開始的值是3,才會有誤會。 迴圈執行3次就中斷了
10樓:為愛而戰
3,2,0 當z=1時 由於 1>0成立 所以進入迴圈 此時z--, z變成0 在z--變成-1,調出迴圈 迴圈了三次,x=3,y=2,z=-1.
1有如下程式,該程式的輸出結果是main
int main i,j,s 0 for i 1 i 3 i for j 0 j i j s a i j printf d n s a 2 2 沒賦值為0 include void main i,j,s 0 for i 1 i 3 i for j 0 j printf d n s 執行結果14 以下...
c語言程式程式main如下charccabcc
char cc,a,b cc a a的ascii碼值 65 賦值給變數cc a cc 32 將a的ascii碼值 65加上32後得小寫字母 a 的ascii碼值 b cc 32 是邏輯或運算,兩邊只要有一個為0則結果得0,兩邊都不為0,結果得1.此時b 1 printf c d n a,b 輸出 變...
設有如下定義 char aa 2abcdABCD則以下說法中正確
正確答案是c。因為aa陣列本身就是指向字元的指標陣列。應該選d 這種定義方式 char aa 2 定義的是一個指標陣列,陣列的成員是字元指標。在這裡,陣列中的兩個字元指標,分別指向了常量字串 abcd 和 abcd 換句話說,這兩個指標的值就是這兩個字串的首地址。a.陣列中元素的值不是字串,而是字串...