若有int y則表示命題「y是偶數」成立的c語言表示式是多少

時間 2022-03-08 15:35:24

1樓:

y%2==0,y&1==0,y/2*2==y都可以。

若有定義:int x=2,y=3;float i;,則以下符合c語言語法的表示式是( )。

2樓:

b、c都是正確的。

a——=是右結合的, x=x*3=2等價於 x=(x*3=2),x*3不是左值表示式,不能賦值

d——%兩邊必須都是整數,i是float型浮點數,所以錯。

請看——

3樓:匿名使用者

選擇b選項

其餘都是錯誤的表示式

在c語言中,若 int w=1,x=2,y=3,z=4; 則表示式w>x?w:z>y?z:x的值是多少。具體步驟

4樓:匿名使用者

4。1、先執行z>y?z:x,判斷z是否大於y,結果為真,取z的值,結果為4;

2、再執行w>x?w:4,判斷w是否大於x,結果為假,結果為4。

若有多個條件表示式像這樣連在一起:x=《表示式1>?《表示式2>:

《表示式3>?《表示式4>:《表示式5>···執行順序是從右到左依次判斷再求出最後的x,即所謂的右結合性。

5樓:

這條語句可以轉換成if語句,這樣寫應該明白很多if (w>x)else if(z>y)else顯而易見,w不大於x,y大於在,表示式為z的 值,4而且最好加個括號,這樣寫:w>x?w:

(z>y?z:x)

6樓:匿名使用者

式a?b:c值為:若a為真,則b;若a為假,則c。

但有一點是值得注意的,那就是問號表示式的結合性,問號表示式是從右往左的運算方向

尤其是當問號表示式巢狀使用時得注意這個問題,例如**:int w=1,x=2,y=3,z=4;

printf("%d",w>x?w:z>y?z:x);

正確結果是:4

純手打,望採納!!!!

7樓:匿名使用者

答案是4

先加上括號進行簡化

(w > x ? w : (z > y ? z : x))因為w比x小,所以取問號表示式的第二個分支,第二個分支是一個問號表示式,並且z > y條件成立,所以取z的值,為4

8樓:哈切八搭

這個是逗號表示式,第一個意思是如果w>x,那麼就取w的值,反之取z,第二個是取的值是否大於y,如果是,取z的值,否則x的值,而且逗號運算先後順序大於普通運算子,答案是4

9樓:

10樓:我就是神不一樣

在de e wa d j g

11樓:匿名使用者

考察邏輯的那裡 。

c語言:已有定義int x=3,y=4,z=5;則表示式 !(x+y)+z-1&&y+z/2的值是?

12樓:

答案是1。

涉及到的運算子: ! () + - && /運算子優先順序為:() ! / + - &&運算過程:

x=3,y=4,z=5

!(x+y)+z-1&&y+z/2

!(3+4)+5-1&&4+5/2

所以表示式計算步驟為

!(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2!7為 0

-> 0+5-1&&4+5/2

5/2 整數除整數得整數 2

-> 0+5-1&&4+2

-> 4&&6

邏輯運算 &&

擴充套件資料c語言運算子的優先順序:

如果同一優先順序的運算子,結合次序由結合方向所決定。

13樓:匿名使用者

只是等於1的,我是經過turbo c2.0編譯過的,答案應該沒什麼問題的,程式是:

main()

答案為什麼會等於1呢?那是因為運算級別的問題,根據運算級別,實現算括號裡面的先,所以程式就變成!7+z-1&&y+z/2;

然後就算!運算,由於7是大於1的,也就是真,所以!真就是假,也就是0,所以函式就變成0+z-1&&y+z/2;

然後再算除號的,由於你這裡兩個都是整形的,所以小數點後面的數忽略,所以就變成0+z-1&&y+2;

接著計算加減運算,也就是變成4&&6;

因為4和6都是大於1的數,所以就是真,由於&&兩邊都是真的話,輸出的就是真,所以結果就是1。

要是還有什麼不明白的話,就mm我吧!嘻嘻~~~~~~

14樓:匿名使用者

1優先順序: 算數》條件》關係》賦值

關係中的優先順序: 非》與》或

15樓:匿名使用者

1,把運算子優先順序搞清楚就好了

16樓:匿名使用者

x等於y加4。四家外加1+3+5+4+1等於三五+4+5+1。

17樓:匿名使用者

!(3+4)+5-1&&4+5/2

=!7+4&&4+2

=!11&&6

所以說那個式子的值是:不是11並且是6

若有說明 int a40,0則下面不正確的敘述是

一朝春誄 是不是這道題 若有說明 int a 4 則下面不正確的敘述是 1分 a 陣列a的每個元素都可得到初值0 b 二維陣列a的第一維大小為1 c 因為二維陣列0中第二維大小的值除以初值個數的商為1,故陣列a行數為1 d 只有元素a 0 0 和a 0 1 可得初值0,其餘元素均得不到初值0選d 金...

C語言 若有定義int p,則表示式p的值就是p所指向的變數的地址值加

末了待續 這是錯的,p沒有進行初始化 我也是剛學指標。p就是所指向的變數的地址。p就是所指向的變數的值 因此 p 就是地址值加1吧,額,我也不確定。因為我還沒瞭解到有關儲存地址的知識。我覺得應該是加1了。 錯誤,要看變數佔用的地址空間,這裡是加sizeof int printf d p printf...

C語言中,若有int a 5則逗號表示式a 2 6,a 3,a 5的值是

風雷九州 沒錯,就是12。號優先順序高於,號表示式,要計算 賦值 直接就是a 2 6 12了,後面那些a 3,a 5什麼的都沒用 我認為是17,因為這是一個逗號表示式,裡面有2個逗號,3個式子!逗號表示式的值,以最後一個式子的值為值,也就是a 5。但是他是從前往後依次做算的,運算第一個式子後,a是1...