若有定義語句 int a 3,b 2,c 1,以下選項中錯誤的賦值表示式是

2021-04-28 17:39:57 字數 3257 閱讀 8111

1樓:手機使用者

a錯了,不能將3賦值給表示式,b=4已經是個表示式了,既然是表示式就只有真假(即0和1),基礎知識要看仔細點…

2樓:匿名使用者

a錯了,原式=>a=4=3,明顯錯誤

3樓:匿名使用者

a肯定是錯的 ,變數a是整型,(b=4)=3這個表示式是bool,所以出錯。

4樓:死後是好人

a放到程式裡一試就式出來了,只有a報錯,其他的都能通過

若有定義語句:int a=3,b=2,c=1;,以下選項中錯誤的賦值表示式是

5樓:匿名使用者

錯誤的是a

賦值只能賦給變數,不能賦給表示式

6樓:匿名使用者

1樓正確。

賦值語句的物件只能是變數,而不是表示式。若換成a=b=3,就對了。

對於b,最後的值:a=2,b=2,c=1

對於c,整個語句是個賦值語句,裡面又巢狀了個b=4的賦值語句,所以,最後的結果是a=5,b=4,c=1

對於d,解法同c,a=5,b=4,c=4.

所以a 是錯誤滴。

7樓:匿名使用者

a錯了,不能將3賦值給表示式,b=4已經是個表示式了,既然是表示式就只有真假(即0和1),

c語言 若有定義語句 int a=3,b=2,c=1; 一下選項中錯誤的賦值表示式是 a a= 10

8樓:陽光的雷咩咩

乙個乙個試過了,a無法編譯通過。報錯是lvalue required as left operand of assignment。

9樓:己秀榮帖妍

a錯了,不能將3賦值給表示式,b=4已經是個表示式了,既然是表示式就只有真假(即0和1),基礎知識要看仔細點…

10樓:曲起雲霜乙

c語言中,賦值號左邊只能是變數,而不能是表示式,答案a中,最右邊的賦值號它左邊是乙個表示式(因為b=4使用了括號)而不是變數,所以是錯的

若有定義語句int a=12,則執行表示式a+=a-=a+a後a的值為多少?

11樓:希聲和寡

a+=a-=a+a,運算子和結合性,

bai由運算子優

先級,du+優先順序為zhi4,-=和+=優先順序為14,+結合方向從dao左至回右,+=和-+從右至左,

所以:先計答算 (a+a),a=12,a+a=12+12=24再計算 a-=(a+a),即a=a-(a+a)=12-24=-12,最後計算 a+=a, 即a=a+a=-12+(-12)=-24

12樓:最萌美少女

若有定義語句int a=12,則執行表示式a+=a-=a+a後a的值為-24。

計算過程:

a+=a-=a+a,運算子和結合性,由專運算子優先順序,+優先順序為屬4,-=和+=優先順序為14,+結合方向從左至右,+=和-+從右至左。

所以:先計算 (a+a),a=12,a+a=12+12=24,再計算 a-=(a+a),即a=a-(a+a)=12-24=-12,最後計算 a+=a, 即a=a+a=-12+(-12)=-24。

13樓:希聲和寡

a+=a-=a+a,運算子和結合性,由運算子優先順序,+優先順序為4,-=和+=優先順序為14,+結合方向從左至右,專+=和-+從右至左,

所以:屬

先計算 (a+a),a=12,a+a=12+12=24再計算 a-=(a+a),即a=a-(a+a)=12-24=-12,最後計算 a+=a, 即a=a+a=-12+(-12)=-24

c語言,if(表示式)中,表示式如果是乙個賦值語句,這個if就會恆真嗎?

14樓:育知同創教育

非零即真,例如

if(a=5)

else d=3;

這個語句沒有語法錯誤(可能會有警告),是可以執行的。

但是這個語句永遠沒有機會執行else部分。

a=5賦值表示式的計算結果就是5,當這個表示式出現在if語句邏輯表示式位置上的時候,它的計算結果是被當作邏輯值處理的,在c語言中用整型數表示邏輯量,非零表示「真」,所以這是乙個永真式;這個if的邏輯條件永遠不會為假。

也就是說,這裡所表達的邏輯條件並不是「a的內容是否等於5」,而是向變數a中送入資料5。

15樓:匿名使用者

不一定,要看給變數賦的值是否為0

*****************************************

嘗試以下程式:

#include

void main()

這個程式會輸出 i=1,也就是說執行了第二個if語句的執行部分。

16樓:『點點滴滴

是去編譯下看有沒語法錯誤!

如果是賦值語句if語句為真。

賦值為0的你可以自己試下

17樓:匿名使用者

不會,只會發生語法編譯錯誤,if裡只可以用==判斷是否相等

c語言賦值表示式問題:若定義有語句:int a=3, b=2, c=1; 以下選項

18樓:滄海雄風

a錯了,不能將3賦值給表示式,b=4已經是個表示式了,既然是表示式就只有真假(即0和1),

而 (a=3*5)=4*3 中的a=3*5 是賦值

19樓:匿名使用者

我在vc++6.0中貼上你的**,編譯執行都通過#include

int main()

結果2 4 4

20樓:匿名使用者

賦值語句的物件只能是變數,而不是表示式 b=4已經是個表示式。若換成a=b=3,就對了。

對於b,最後的值:a=2,b=2,c=1

對於c,整個語句是個賦值語句,裡面又巢狀了個b=4的賦值語句,所以,最後的結果是a=5,b=4,c=1

對於d,解法同c,a=5,b=4,c=4.

所以a 是錯誤滴。

int a=3,b=2,c=1; 錯誤的賦值表示式是 a.a=(b=4)=3 b.a=b=c+1

21樓:聽不清啊

因為bcd都是語法上正確的賦值表示式。

而a是語法錯誤的,編譯不能通過的。

C語言若有定義 int a 1,b 2,c 3則語句 a丨丨 bc,執行後b的值為多少

2,或運算只需乙個滿足就行 a 2不等於0個,故或運算結果為一,b運算沒得到執行 a 算得結果是邏輯真,跟後面的部分進行邏輯或運算,不管後面的部分算得結果是真還是假,最終結果都是趙,所以後面的部分就不算了。所以運算後 b 的值還是 2。同理,c 的值還是 3。c語言,若有定義 int a 1,b 2...

若有如下定義 int a 1,b 2,c 3執行語句b a4bac之後,c的值是

3。判斷是從左向右,前面的可以判斷的話後面的不執行。表示式a 4值為1,但表示式b 執行後 c 的值是 4 啊 在這個語句裡用的 c 先返回 c 的初始值3 c的值是4,c c c 1 開始c 3,所以c的值是4!設有 int a 1,b 2,c 3,d 4,m 2,n 2 執行 m a b n c...

inta3,b2,c1則語句abc執行後b的值為

那個是條件表示式,因為沒乙個是0,所以結果為真,所以是1 人家問得是最後b的值而不是整個表示式的值 所以答案為2 若已定義 int a 3,b 2,c 1 則語句 a b c 執行後b的值為 這是短路原則,只要有乙個為真則整體就為真了,所以計算出 a後判斷他是true,所以 b c就不會計算 c語言...