C語言x x 1 32如何計算是,什麼意思

2022-10-10 09:46:29 字數 4747 閱讀 9587

1樓:匿名使用者

x=(x+1)%32;

此語句是一句賦值語句,其中自變數是x,因變數也是x,即完成了對變數的就地修改。

此句具體執行過程可以理解為:

int y;

y=x+1;

x = y % 32;//即餘32操作,也就是求y整除32的餘數例如:x=50;

則 x=(50+1)%32 = 51%32 = 19

2樓:匿名使用者

給x賦值為x原來的值加一對32取餘的餘數

3樓:金色潛鳥

(x+1)%32 把x 的當前值 加 1,用這個 和 做被除數,用32 做除數,做整數除法運算,你將獲得 商和餘數, 這時,不管商是多少,我們只要 餘數,餘數 就是 我們要的結果, 並賦給 x。

例如: x=15; x=(x+1)%32 = (15+1)%32=16%32 = 16(捨棄商0,取餘數16)

例如: x=35; x=(x+1)%32 = (35+1)%32=36%32 = 4 (捨棄商1,取餘數4)

% -- 「模」運算子。 (整除取餘數運算)

c語言x&(x-1) 是什麼意思

4樓:

樓上正確,但是說的太複雜。

其實實際結果就是變數x的最後一位(二進位制的個位),其它二進位制位都是0的一個整數。

5樓:逢淑英毛戊

從命令的角度講,是將x的每一bit(2進位制中的1和0都佔一個bit)與0001的每一bit做與運算.

"&"是"與運算"的意思,1&1=1,其他情況(1&0,0&1,0&0)都=0.

從邏輯的角度來講,這個命令就是取x的最左邊一位.例如x是0011,x&1得到0001,如果x是0110,x&1得到0000.

6樓:風若遠去何人留

將x的二進位制值中,最後一個1置0,其它不變。即達到從x的尾部,刪除一個1的效果。

二進位制的減法規則中可以得知,在做x-1時,當把x寫作a1b的形式,其中a為隨意值,b為若干個0,可能為0個。

這時x-1的值,實際上是

a0c的形式,其中a值不變,c為與b相同位數的1.

這樣x&(x-1)的結果,根據按位與的特性,當運算元一方為0時,結果為0,於是

x&(x-1) = a0b

對比x原始值a1b,x&(x-1)即把最後一個1改成0.

7樓:關冬靈環厚

&是位操作運算子中的與運算,計算時,先把原來的十進位制數轉換成二進位制,按照如下規則每一位對應著進行運算:

1&1=1

1&0=0

0&1=0

0&0=0

這道題就沒這麼麻煩了,因為9999是奇數,轉換成二進位制數後,最後一位肯定是1,所以9998除了最後一位是0以外,其他位數都和9999的相同,這樣除了最後一位,其他位數只可能有兩種運算:1&1=1和0&0=0,而最後一位進行的運算是1&0=0,這樣,得到的結果就與9998的二進位制數是一樣的了,換言之

9999&9998=9998

在c語言裡,x+=x 是什麼意思

8樓:匿名使用者

+=是加法的變種, 加法和賦值的結合.

a+=b 等效於a=a+b

所以 x+=x就是x=x+x

9樓:天雨下凡

x+=x的意思是x=x+x

10樓:盧氏仲海

x = x +x;

x = 5;

x +=x 後。x = 10;

11樓:

x += x;

相當於 x = x + x;

x +=1

x相當於 x = x + 1;

c語言程式中x>>=1是什麼意思??

12樓:四舍**入

>>=:這是複合運算子

「>>」是雙目移位運算子,其功能是把「>> 」左邊的運算數的各二進位全部右移若干位,「>>」右邊的數指定移動的位數。

例如:設 a=15(這是十進位制,要把它轉換為2進位制數),a>>2表示把000001111右移為00000011(十進位制3)。

13樓:餘啊水中游啊遊

>>=:這是複合運算子

右移運算右移運算子

「>>」是雙目運算子。其功能是把「>> 」左邊的運算數的各二進位全部右移若干位,「>>」右邊的數指定移動的位數。例如:

設 a=15(這是十進位制,要把它轉換為2進位制數),a>>2 表示把000001111右移為00000011(十進位制3)。應該說明的是,對於有符號數,在右移時,符號位將隨同移動。當為正數時,最高位補0,而為負數時,符號位為1,最高位是補0或是補1 取決於編譯系統的規定。

例如:#include "stdio.h"

void main()

//結果為:x=0x88888888

//然而

#include "stdio.h"

void main()

//以下結果為:x=0x44444444

先把x向右移一位再賦值給x,所以x的值有變化,第一種情況沒有變化

14樓:粘潔茹凰

"!"是取非得意思。

兩個基本概念

1、在c語言中一般認為「0」是假,其他不是「0」的都是真。

2、if()裡面為真,則進入if下的大括弧{},為假,就跳過。

以此題為例:

若x是「0」(為假)。則「!x」就不是零(為真)。則裡面為真,進入if下的大{}。

若x不是「0」(為真)。則「!x」就是零(為假)。則裡面為假,跳過if下的大{}。

15樓:聽不清啊

c語言程式中x>>=1,如果作用於整數x,就是把x右移一位,把x的二進位制值的最後一位丟棄,最高位補0。

實際就是把x的值除以2。在運算結果上等價於x=x/2。

16樓:安徽新華電腦

>>是右移運算子,就是將n的二進位制表示向右移位。你這裡的n>>=1表示將n的二進位制表示向右移動一位再賦值給n.這裡的》=與+=,-=,*=的用法是一樣的,先做運算再賦值

17樓:匿名使用者

x>>=1:是將x 以二進位制形式表示,讓各位向右移動1 位,左補0(邏輯右移1 位,相當於除 2 處理), 然後將結果仍存入x 中。

注:你的c 編譯系統若預設為是算術位移,則是各位向右移動1 位,左補1. 用時要考查一下噢。

18樓:nohow絕不

這是移位運算的意思。

是位操作運算的一種。移位運算子有雙目移位運算子:<<(左移)和》(右移)。

移位運算子組成的表示式也屬於算術表示式,其值為算術值。左移運算是將一個二進位制位的運算元按指定移動的位數向左移位,移出位被丟棄,右邊的空位一律補0。右移運算是將一個二進位制位的運算元按指定移動的位數向右移動,移出位被丟棄,左邊移出的空位或者一律補0,或者補符號位,這由不同的機器而定。

在使用補碼作為機器數的機器中,正數的符號位為0,負數的符號位為1。

19樓:匿名使用者

表示x=x>>1,右移一位,關於怎麼移,可參考樓上的解釋

c語言:x/=(x (*p%=2),(a&&5+3))怎麼計算?是什麼意思,求助大神

20樓:且聽風吟

等號右邊是一個逗號表示式,該表示式的值是逗號後面的值,即

(a&&5+3)的值,x (*p%=2)的值不用管。這個問題就是x=x/((a&&5+3))

c語言裡x-=1是什麼意思?

21樓:匿名使用者

c語言裡的賦值運算子有 = -= += *= /= .

int a=5; //把5賦給變數a

int b=10;

b +=5; //把【b當前值】加【5】後【再賦給】變數b ,即b = 10 + 5;

其他的-= += *= /= 類似!

22樓:匿名使用者

int x = 8;

x -= 1;(複合賦值運算子)

那麼x = 7;等同於:x = x - 1;

但x-=1只計算x一次,而x=x-1計算x兩次,其它的像x *= 4即x = x * 4,所以x=32另x &= 4即x = x&4

23樓:匿名使用者

x-=1的意思就是x=x-1;

如:y+=3 就是y=y+3

-= += *= /= 都一樣

這是c語言裡面的複合運算子

24樓:匿名使用者

-=是一個賦值運算子,x-=1的意思是x=x-1,

類似的還有+=,*=,/=,《=,》=,—=……=,|=

這些賦值運算子的用法都是一樣的,如x-=1的意思是x=x-1

25樓:匿名使用者

x-=1意思就是x=x-1.

例如:x本來為5,那麼經過x-=1後,x就等於5-1,即等於4.

26樓:mvp睫毛在跳舞

相當於:x=x減1,就是左邊的移到右邊,是種簡寫!

27樓:匿名使用者

x = x-1;

雙目運算都可以這麼寫

28樓:匿名使用者

x-=1 就是 x=x-1

c語言的這段程式C語言中這段程式是什麼意思?

printf函式需要包含的標頭檔案 include 程式的主函式入口 void main printf n for i 0 i 4 i 每當第一層迴圈執行完一次後就執行一次printf n 換行 printf n 最後的執行結果 關鍵點是迴圈巢狀 i 0時 j從0開始 每次執行迴圈體後j 1 迴圈1...

c語言中s這是什麼意思c語言中s是什麼意思?和s與s有什麼區別?

s表示s是一個指標 另外抄,指標跟地址不是一個概念。指標是一種變數型別,這種變數型別 的值是地址。就像int變數的值是整數一樣。你可以說數字5是整數,但是不能說5是一個int變數。取決於在scanf中使用還是在printf中使用。在scanf中使用,則新增了 的部分會被忽略,不會被引數獲取。6261...

c語言中3fi啥意思,c語言中fi是什麼意思dfin是什麼意思

3fi 這是在輸出時控制格式的,輸出一個3位小數的實型數,後接一個字母 估計是計算結果為複數了 c語言中fi是什麼意思?d fi n 是什麼意思?從d fi n 分析fi是一個函式名,有返回值,有一個形式引數。整個表示式d fi n 的意思是,用專變數n呼叫函式fi,將函屬數fi的返回值與d的值相加...