在c語言中怎麼表示負數

2021-03-05 09:22:01 字數 1665 閱讀 2194

1樓:陌上花開

值|第一位符號位1為負,0為正。 正數的補碼和2進位制原碼是一樣的。

負數的補碼:

1、先取絕對值|x| ;

2、對|x|+1 ;

3、對|x|+1 取反,就得到它的補碼了 。

計算機中存放整型資料都是按補碼的形式存放的。

擴充套件資料:有符號數的表示方法是由硬體決定,而不是由c決定的。有三種表示方法:

1、二進位制原碼

0000 0001  表示 1

1000 0001  表示 -1

這個方法有個缺點是有兩個零: +0 和 -0。這會引起混淆,而且用兩個位組合來表示一個值也有些浪費。

2、二進位制補碼(最普遍的系統)

區別在於 singned 和 unsigned:

1)如果是無符號位元組, 1000 0000 該組合為 1282)如果是有符號位元組, 1000 0000 該組合為 -128第一種表示數的範圍是 0 ~ 255;

第二種表示數的範圍是 -128 ~ +127,對於一個二進位制補碼數取負數,最簡單的方法就是取反、加 1。

3、二進位制反碼

通過反轉位組合中的每一位以形成一個數的負數,例如:

0000 0001  表示 1

1111 1110  表示 -1

這種方式也有一個 -0:1111 1111。其範圍是 -127 ~ +127。

2樓:兮汐

1.負數在現代計算機裡一般用補碼錶示,為什麼呢?原因是:保證0的左右不矛盾

1是0001,推算出0是0000;

-1的是1111,推算出0也是0000。

如果直接用反碼(0變成1,1變成0)那麼0就會有兩個結果。

如果用第一位表示符號,後三位表示大小,那麼就有空間浪費。

2.char型別是8位,1000 0000還原為原碼:

最高位是1,表示負數,剩餘的各位取反 111 1111 再+1 得到 1000 0000, +128的原碼,整個數為-128

求採納為滿意回答。

3樓:

就直接寫啊,

舉個例子啊:

int a = 19;

int b = 0-a; 這裡b就是負數了,0-19就是 -19了。

4樓:

直接在變數b前面加-(負號)即可。

設b=5

那麼int a=-b 此時a=-5

再比如設b=-5

int a=-b 此a=5 因為它相當於int a=-(-5) 即負負得正。

5樓:d靈心

定義有符號變數 在賦值的時候前面加一個負號就行

6樓:溫暖流過時光

資料型別是有符號型別,負數就和數學裡的負數一樣。int 的取值範圍是-32768~32767,只要不越界就行

7樓:w水木清華

定義該數為浮點型,並在前面加符號即可!

8樓:匿名使用者

#include

#include

int main(void)

-b  直接寫成這樣就是了。

9樓:匿名使用者

直接乘-1就可以。b*(-1)

c語言中怎麼表示除法,C語言中怎麼表示除法

5處以2這樣寫 5 2結果是取整數的也就是等於2 是除法取餘數好好看看數吧 c語言中除號用 表示,相應的,乘號用 表示 a b 表示a除以b,但是需要注意,當a b均為整形時,運算為求出不大於商的最大整數,如10 7 1,5 2 2,13 4 3 相對應,a b表示求a除以b的餘數 如果要實數除法,...

在c語言中怎樣表示數的n次方在C語言中怎樣表示一個數的n次方

c語言中計算一個數的n次方可以用庫函式pow來實現。函式原型 double pow double x,double y 舉例如下 double a pow 3.14,2 計算3.14的平方。注 使用pow函式時,需要將標頭檔案 include包含進原始檔中。拓展資料 次方運算是數 算,我們可能在其他...

c語言階乘怎麼表示,C語言中的「階乘」怎麼表示?

this program can calculate the factorial of int n include int factorial int n int main void 擴充套件資料 階乘是定義在自然數範圍裡的 大多科學計算 器只能計算 0 69 的階內乘 小數科學計算器沒容有階乘功能...