當前位置:首頁 » 編程語言 » 符合c語言賦值表達式

符合c語言賦值表達式

發布時間: 2022-08-09 22:16:14

A. 在c語言中11種賦值運算符的具體含義,用法

1.六個變數=表達式的賦值:

=是賦值運算符,/=是除後賦值,*=是乘後賦值,

%=是取模後賦值,+=是加後賦值,-= 是減後賦值,

2.<<=是左移後賦值,變數<<=表達式 左移就是將左邊的數的二進制各位全部左移若干位,右邊的數指定移動位數,高位丟棄,低位補0, 移幾位就相當於乘以2的幾次方。

3.>>=是右移後,變數>>=表達式,右移運算符是用來將一個數的各二進制位右移若干位,移動的位數由右操作數指定(右操作數必須是非負值),移到右端的低位被舍棄,對於無符號數,高位補0。

對於有符號數,某些機器將對左邊空出的部分用符號位填補(即「算術移位」),而另一些機器則對左邊空出的部分用0填補(即「邏輯移位」);

對無符號數,右移時左邊高位移入0;對於有符號的值,如果原來符號位為0(該數為正),則左邊也是移入0。

如果符號位原來為1(即負數),則左邊移入0還是1,要取決於所用的計算機系統,系統移入0或系統移入1。

移入0的稱為「邏輯移位」,即簡單移位;移入1的稱為「算術移位」。

4.&= 按位與後,變數&=表達式,按位與是指:參加運算的兩個數據,按二進制位進行「與」運算。

如果兩個相應的二進制位都為1,則該位的結果值為1;否則為0。

5.^= 按位異或後賦值,變數^=表達式,參與運算的兩個量按照對應的位進行異或運算,且
0^0→0, 0^1→1, 1^0→1, 1^1→0

一個數與0異或仍保持不變,如a^0=a
一個數與自己異或結果為0,如a^a=0

11.|=是按位或後賦值,變數|=表達式,參與運算的兩個量按照對應位進行或運算,且0|0→0, 0|1→1, 1|0→1, 1|1→1。

(1)符合c語言賦值表達式擴展閱讀:

1.賦值表達式的功能是計算表達式的值再賦予左邊的變數。

賦值運算符具有右結合性,因此a=b=c=5可理解為a=(b=(c=5))。

2.在其它高級語言中賦值構成了一個語句,稱為賦值語句;

而在C語言中,

把「=」定義為運算符,從而組成賦值表達式。

3.凡是表達式可以出現的地方均可出現賦值表達式。

例如:式子x=(a=5)+(b=8)是合法的。它的意義是把5賦予a,8賦予b,再把a,b相加,和賦予x,故x應等於13。

4.在C語言中也可以組成賦值語句。

按照C語言規定,任何錶達式在其未尾加上分號就構成為語句。

B. 符合C語言語法的賦值表達式是A、d=9+e+f=d+9 B、d=9+e,f=d+9 C、d=9+e,e++,d+9 D、d=9+e++=d+7

需要首先明確
1.)賦值操作符的優先順序比「+」更低。
2.) 賦值操作符的返回值是賦值後的左操作數的值。
3.) 常量和表達式不能作為左值,不能作為左操作數(即不能放在二元運算符的左邊)。

以上3點判斷如下:
A:可以分割為兩個連續的賦值操作,連續賦值操作從右至左執行,第一個執行賦值操作左邊為(9+e+f)是表達式,錯誤。編譯器應該報錯。可以修改為d=9+e+(f=d+9)。
B:正確。
C:d+9是要干什麼?也沒有賦值。語法錯誤。
D:同A

建議寫出來編譯一下。映像會深刻些。某些教材是比較簡略的,建議查查C++
primer之類的書籍。

C. 24.以下符合C語言語法的賦值表達式是( )。 A.a=9+b+c=d+9

答案選擇B
A出現9+b+c=d+9這樣的式子是不能完成賦值的
D的錯誤與A相同
C是三條語句,a=9+b;b++;c+9,也就是說後面的b++和c+9在這里沒有意義
B括弧中是逗號表達式,從左往右執行,返回最後一個表達式的值

D. 符合c語言語法的賦值表達式是 A. d=9+e,e++,d+9 B. d=9+e,f=d+9 問A和B選項是否都對,請詳解

都對。
A相當於(d=9+e),e++,d+9算完括弧後是一個逗號表達式。
B相當於(d=9+e),(f=d+9)算完括弧後也是一個逗號表達式。

E. c語言題:符合C語言語法的賦值表達式是

B
C
=左邊必須是左值(可以被賦值的值,也被稱作變數表達式,變數、數組表達式、指針表達式的值都是左值。但是算數、邏輯運算表達式、函數表達式的值不是左值所以不能被賦值)所以A、D錯誤
C是逗號表達式。(逗號表達式的值和類型都由逗號右邊的表達式決定,就是說連續逗號表達式比如a,b,c,d等價於a,(b,(c,(d)))
-
賦值僅僅是一種表達式,也有值和類型a
=
1。的值是1類型是int,所以完全可以賦值給另一個int類型變數b
=
(a
=
1)也就是b
=
a
=
1。不存在不可以連續賦值的說法。
括弧表達式也是一樣。只要有類型和值就能賦值給對應的變數這是賦值的原則。
B和C的寫法在標准C編譯器上都是可以編譯通過的。

F. 9、以下符合C語言語法的賦值表達式是 A、d=9+e+f=d+9 B、d=9+e,f=d+9 C、d=9+e,e++,d+9 D、d=9+e++=d+7

B、d=9+e,f=d+9
C、d=9+e,e++,d+9
//經測試,上面兩個都對。

G. 下面表達式中符合c語言語法的賦值表達式的是

答案是b.
a和d中都有連等,所以顯然錯誤
c選項中,賦值號右邊不能用逗號表達式,所以錯誤。
本題考點在於賦值運算規則的運用。
c語言中不允許連續在一個表達式中出現連續的賦值運算。

熱點內容
javasql插入 發布:2022-09-26 02:23:35 瀏覽:853
安卓微信在哪裡設置視頻 發布:2022-09-26 02:22:05 瀏覽:829
血壓計廣告腳本 發布:2022-09-26 02:20:10 瀏覽:899
shell腳本字元串 發布:2022-09-26 02:20:05 瀏覽:176
擴展訪問列表至少訪問哪些項 發布:2022-09-26 02:18:34 瀏覽:25
安卓ios數據轉移在哪裡 發布:2022-09-26 02:18:25 瀏覽:358
首經貿繳費原始密碼是多少 發布:2022-09-26 02:17:35 瀏覽:251
java給list排序 發布:2022-09-26 02:16:10 瀏覽:934
keil文件編譯 發布:2022-09-26 02:16:01 瀏覽:200
酷開系統和安卓電視哪個好 發布:2022-09-26 02:14:58 瀏覽:188