c語言區分int資料正負的問題,C語言區分int資料正負的問題

2021-03-04 09:22:46 字數 1680 閱讀 1308

1樓:匿名使用者

型別是對一串二進位制位的解釋,這16bit有兩種解釋,有符號整數,有無符號整數。

按有符號數來解釋,最高位是符號位,1表示負數,其值為-20840。

按無符號數來解釋,值為44696。

2樓:匿名使用者

其實機器是不知道正負的 正負是給編譯器看的 程式編譯的時候正負就已經有區分啦 比如你如果用匯編的話就少了有符號和無符號這個概念

3樓:匿名使用者

這裡可以先進行一個判斷語句:

if(a>=0)

```````

else

```````

c語言程式設計判斷輸入整數的正負性和奇偶性

4樓:匿名使用者

#include

main()

右邊的是註釋!

5樓:樂觀的徐強

void main()

else

num=num%2;

if(num==0)

else

#include

main()

右邊的是註釋!

6樓:

1 #include

2 3 int main(int argc, char* argv)4

7樓:匿名使用者

正負判斷最高位,1為負,0為正

奇偶判斷最低位,1為奇,0為偶

c語言中如何任意輸入一組數,並判斷正負數的個數?

8樓:百度使用者

#include

#include

main()//scanf的

printf("共有正數%d個\n",plus);

printf("共有負數%d個\n",negative);

system("pause");

}main()//gets的

printf("共有正數%d個\n",plus);

printf("共有負數%d個\n",negative);

system("pause");

}getchar???這個只能輸入一個字元!!比如:23。已經是兩個字元了!!

c語言中讓兩個正的int型變數相加的程式為什麼執行結果會出現負數?

9樓:慕容冰綃

因為int是有最大限制的,當相加的結果超出這個限制之後,(就是所謂的溢位),最高位可能會變為1,也就是表示負數,所以結果為負數

10樓:匿名使用者

一般定義的int型變數都是指有符號型的,數值範圍是-2^15~(2^15-1),儲存的時候是以二進位制版數儲存,佔權兩個位元組,一共是有16位,最高位為符號位,符號位為0,即為正數,為1,即為負數。

如果想計算更大的資料的話,可以定義別的資料型別unsigned long int 即為無符號的長整型。

printf中的輸出格式也需要做相應變化,如%ld,或者%e之類的定義成double型可以計算範圍更大,輸出選擇%e

11樓:匿名使用者

你什麼編譯器啊?我執行你的程式沒問題啊,

檢查一下你的編譯環境吧............

c語言問題中int和,c語言問題中int和float

int型是整數,作為結果輸出也只能是整數 如果是個小數,它會自動把小數位拋棄的。float就可以是小數了。不是精度的問題,是這一句的原因 s s a b int 型的 a b 得到的是整型 float 型的 a b 得到的浮點型 比如說,a 3,b 2 int 型得到的是1,float得到的是1.5...

請問c語言問題float型資料轉int把整數部分和小

float型資料精度只有 有效數字 6 7 位,所以存放12345.53231 時,只能精確到 12345.53。要存放 12345.53231,可以用 double 或 char s.double 仍有回 10進位制到2進位制,2進位制回答10進位制的誤差問題。include int main 輸...

求教c語言從鍵盤輸入整型資料int型編寫

include include int main int i scanf s num printf s dbits n num,strlen num for i 0 num i i if num i 9 num i 0 cnt num i 0 for i 0 i 10 i if cnt i prin...