以下程式執行後c的二進位制值是什麼

2021-12-20 06:35:06 字數 3966 閱讀 1341

1樓:匿名使用者

a = 0b00011111;

b = 0b00010111;

c = a & b >> 1;//& 優先順序高於 >>a & b : 0b00010111;

a & b >> 1;//就是把0b00010111右移一位,就是0b00001011了

補充:>>算術右移,左邊符號位如果是0,那麼右移後左邊空出來的位自動補0,是1就補1;保證符號位不變。右邊移出去的位就丟棄。

一下程式執行後,int a=2,b=3,c;c=(a^b)<<2,c的值是?

2樓:

2與3異或結果為1,然後左移2位,相當於乘以4,因此c的值為4.

3樓:匿名使用者

32,2的3次冪為8,向左移兩位就是乘2*2得32

位操作:先轉化為二進位制,比如說8->1000

左移兩位即是100000,化為十進位制就是32.

4樓:匿名使用者

a^b=01

01<<2=4c=4

若有以下程式段,則變數c的二進位制值是()。int a=3,b=6,c;c=a^b<<2; 選以下那個答案,麻煩詳細說明下

5樓:取綽號好難

a=3, b=6, c=a^b<<2=00000011 ^ (00000110<<2)

00000011^00011000= 00011011

a) 00011011

6樓:匿名使用者

a = 00000011

b = 00000110

t = b << 2 = 00011000a ^ t = 00011011

所以選a

以下程式執行後的輸出結果是??main(){ int a=10,b=20,c=(a%b<1)||(a/b>1);printf("%d%d%d\n",a,b,c);}

7樓:匿名使用者

輸出a=10,b=20,因為=(賦值運算子)比||邏輯或運算子優先順序低,所以c最後被判斷為0

所以輸出為:10200

我自己想的 如有錯 ,請莫怪哈

8樓:匿名使用者

c的值是表示式(a%b<1)||(a/b>1)的值,(a%b)是取餘運算,結果為10,(a/b)是整除運算,結果為0,所以表示式的值為0 , 即c=0;

執行結果也為 10 20 0

9樓:匿名使用者

linux執行結果是10200。

10樓:匿名使用者

10200

10 a

20 b

0 c a%b<1 = false, a/b>1=false, c = false,false = 0.

11樓:匿名使用者

#include

int main(int argc, const char *ar**)

輸出結果是:

10200

具體情況如下圖所示:

若已定義int a=9,b=11,c;則語句c=a>b ;執行後a的值為多少

12樓:冼慧雅

c=0;

a>b =》 false

前置轉換int =》 0

13樓:大傘夏

a 二進位制 1001 ,向右移動11位,全為哦0,所有 c=0

若int a=20, b=28,c;c=(a&b)>>2;求c的值

14樓:匿名使用者

這種題一步一步分析就好了。

首先,將十進位制的數字轉化成二進位制的數字:

a = 20 = 10100b

b = 28 = 11100b

然後,計算a&b:

a&b = (10100)&(11100) = 10100最後,進行移位

c = (10100)>>2 = 00101b = 5執行出結果為:

設有以下語句,則c的二進位制值是( ) char a=3,b=6,c; c=a^b<<2; a.00011011 b.00010100 c.00011100 d.000

15樓:天空

^c=a^b<<2

^(按位異或)優先順序為9

<<(左移)優先順序是5

故先執行左移而後異或

b=6,將6按位左移2,6的2進位制是0000 0110,左移後得0001 1000

a=3,3對應2進位制數為0000 00110001 1000

^ 0000 0011

-------------------

0001 1011

答案為a

在c#中,設計一個控制檯程式,定義變數 int a = 3, b = 4, c = 5; 並求表示式(++c-1)&b+c/2的值。

16樓:無奈de失憶

答案是1。首先「&」是邏輯的「與」,兩個都為真即為真,值為1。,有一個是假即為假,值是0.(++c-1) 和b+c/2都不等於0 所以為真。

17樓:匿名使用者

是先算括號裡面,再進行邏輯運算,最後再加減乘除。就本題目,先算(++c-1)c先自加1到得c+1,再減1到得c,c再與b做與操作,由於c與b不等,所以操作結果為0,最再加上c/2,因為是int型要省去餘數,所以得到最後結果為2,。

18樓:願過流聲

int a=3,b=4,c=5;

求表示式:(++c-1)&b+c/2;

其中(++c-1)一定是優先的對吧:那麼這個表示式的值為:c-1後自身+1:就是括號內的值是5,

&是優先順序最低的.那麼c因為自身加了1=6了.6/2=3;b+3=7;

5&7=5了.所以結果為:5;

至於5&7為什麼得5.你要懂&演算法.101就是5,但是111是7,真假真,就是5.

增加回答:8&5=?

8是:1000,

5是 0101

答案就是:真假假假,所以還是8. 先我為最佳答案呀.

19樓:管文華

基本運算子優於特殊運算子如》<==-*/優於&& || @@

20樓:匿名使用者

答案為5. 具體優先順序請參考

21樓:遊戲人間

在c語言中,若有定義:int a=5,b=2,c=1;則表示式a-b

22樓:匿名使用者

||#include

#include

char st[110];

int main() {

int a=5,b=2,c=1;

printf("%d\n",a-b

表示式為假,輸內出容0

23樓:匿名使用者

先計算 a-b

然後計算b==c 即 2==1 不成立, 值為假。

||兩側都是假。 結果為假。 即0.

24樓:聽不清啊

a-b

b ==c 也不滿足,

所以表示式a-b

25樓:匿名使用者

結果是false吧。

26樓:江南煙雨歸塵

是 0 ||兩側都是 0 ,結果是0

什麼是二進位制?二進位制怎麼算,二進位制是什麼意思,怎麼算

二進位制 binary 在數學和數位電路中指以2為基數的記數系統,以2為基數代表系統是二進位制的。這一系統中,通常用兩個不同的符號0 代表零 和1 代表一 來表示 1 數位電子電路中,邏輯閘的實現直接應用了二進位制,因此現代的計算機和依賴計算機的裝置裡都用到二進位制。每個數字稱為一個位元 bit,b...

C語言將某檔案以二進位制形式開啟,二進位制資料存入一維陣列中!急急急

include include int main b int calloc j,sizeof int 分配一維陣列儲存 rewind fp1 for i 0 i 1.fopen函式開啟需要讀取的文字,獲取該檔案的檔案描述符2.使用fscan 函式對檔案進行讀取。3.放到二維陣列其實就是讀取相應格式的...

二進位制負數的絕對值怎麼求,二進位制補碼為負數,求這個負數的絕對值怎麼求

一般情況下,二進位制表示負數不會使用補碼的,補碼只在計算機內部使用。如果有人說 1000 0001 是負數,意思就是 1。因此,取絕對值將最高位清0就可以了 二進位制補碼為負數,求這個負數的絕對值怎麼求?00110010 10000011 10110101,已經說明這是二進位制補碼,所以最高位為1的...