當前位置:首頁 » 編程語言 » c語言中不知道一個數為正為負
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言中不知道一個數為正為負

發布時間: 2023-04-05 12:21:36

『壹』 輸入一個數,然後判斷輸出這是一個正數,或者這是一個負數,或者這是0 c語言

#include
#include "StdAfx.h"
void main()
{

float a;
//定義變數

printf("請輸入一個數:\n");//輸入提示

scanf("%f",&a);
//獲取輸入

if(a>0.0)
//大於0

{

printf("%0.1f大於0",a);

}

else if(a<0.0)
//小於0

{

printf("李前%0.1f小於0",a);

}

else
//等讓磨於0

printf("%0.1f等於0"坦擾斗,a);
}

『貳』 c語言編程,輸入一些整數,判斷其中正數與負數的個數,並分別求出正數與負數的平均值

代碼如下:

#include "stdio.h"

main( )

{ int i,iNum,iCount1=0,iCount2=0,iCount3=0;

for(i=1;i<11;i++)

{

printf("請輸入10個數:");

scanf("%d",&iNum);

if (iNum>0)

iCount1++; /*iCount1表示大於0數姿虧*/

else if(iNum<0)

iCount2++; /*iCount2表示小於0的數*/

else

iCount3++; /*iCount3表示等於0的數*/

}

printf("%d,%d,%d",iCount1,iCount2,iCount3);

}

(2)c語言中不知道一個數為正為負擴展閱讀

C語言編程注意事項:

1、當標識符由多個片語成時,每個詞的第一個字母大寫,其餘全部小寫;

2、程序中不得出現僅靠大小寫區分的相似的標識符;

注意相似的數字及字母(0和o,I(i)和l(L))

3、一個函數名禁止被用於其他之處;

4、所有宏定義、枚舉常數、只讀變數全兄扒用大寫字母命名,用下劃線分割單詞;

#define MAX_NUM = 100

5、一般來說,習慣上用n、m、i、j、k等表示int型變數;c、ch等跡塵神表示字元類型變數;a等表示數組;p等表示指針;循環變數用i、j、k。

『叄』 c語言中負數如何表示

c語言中負數表示方法就是在數前加負號「-」,比如:
-5,-10000,等
一個變數賦值為負數也是如此,比如:
x=-1000;

『肆』 用位操作寫一個判斷正負數的C語言代碼

你好,首先要毀敏測試一下你纖型枝編譯器所定義的整型是多少位元組,用sizeof(int)測試一下,一般是4位元組,假如是4位元組說明是32位,這樣無符號和有符號整數區別在於第32位是1還是0,所以可以用一個數0x80000000=1000
0000
0000
0000
0000
0000
0000
0000(32),與租鍵整數做「與&」運算,假如最高位結果是1(即0x80000000),說明原來整數是負數,假如位0則是正數。
所以可以用如下代碼實現
int
yu(int
num)
{
return
(num
&
0x80000000)
;
}
之後在調用函數測試return值就可以了

『伍』 請問C語言中我想把一個正數變為負數怎麼變 例如:9變成-9

確實跟補碼有關
計算機為了使減法變為加法把負數用補碼來存儲(正數也是只不過正數的補碼與原碼相同)
以鍾表為例
例如: 假設當前時針指向10點,而准確時間是6點,調整時間可有以下兩種撥法:
一種是倒撥4小時,即:10-4=6
另一種是順撥8小時:10+8=12+6=6

計算機內部計算類似於上面 它把(-4)變成儲存為12-4=8(即所謂的補碼)
而計算機計算10-4時它就變成10+8=18 而鍾表最大值為12所以18-12=6 於是計算就完成了

(1)正數的補碼:與原碼相同(因為它本身是加數計算機可以計算所以不用變)。
例如,+9的補碼是00001001。

(2)負數的補碼:符號位為1,其餘位為該數絕對值的原碼按位取反;然後整個數加1。(因為它不是是加數計算機不可以計算 所以要變成補碼)
例如,-7的補碼:因為是負數,則符號位為「1」,整個為10000111;其餘7位為-7的絕對值+7的原碼
0000111按位取反為1111000;再加1,所以-7的補碼是11111001。簡單點就是10000000( 128)-0000111(7)=11111001(121)

而C語言中有符號的整數為16位從00000000,00000000 到011111111,11111111 即0到32767為正數所以補碼為原碼

從11111111,11111111 到10000000,00000000
為-1到-32768

『陸』 輸入一個數,然後判斷輸出這是一個正數,或者這是一個負數,或者這是0 c語言

題目是求一個整數的二蔽陵進制中1的個數。

『柒』 在c語言中怎麼表示負數。

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

負數的補碼:

1、先取絕對值|x| ;

2、對|X|+1 ;

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

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

(7)c語言中不知道一個數為正為負擴展閱讀:

有符號數的表示方法是由硬體決定,而不是由C決定的。有三種表示方法:

1、二進制原碼

0000 0001 表示 1

1000 0001 表示 -1

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

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

區別在於 singned 和 unsigned:

1)如果是無符號位元組, 1000 0000 該組合為 128

2)如果是有符號位元組, 1000 0000 該組合為 -128

第一種表示數的范圍是 0 ~ 255;

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

3、二進制反碼

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

0000 0001 表示 1

1111 1110 表示 -1

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

『捌』 輸入一個數,判斷正負,C語言寫程序,初學者,不太懂怎麼寫

主函數中這么寫:
int a;
printf("input a number:");
scanf("%d",&a);
if(a>0)printf("%d is 正數.",a);
else if(a==0)printf("%d is 0.",a);
else if(a<0)printf("%d is 負數.",a);

『玖』 用C語言編寫程序 輸入一個整數,判斷正負性及奇偶性並輸出

#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
if(n>0)
{
if(n%2) printf("此數為正數且為奇數。");
else printf("此數為正數且為偶數");
}
else if(n<0)
{
if(n%2) printf("此數為負數且為奇數。");
else printf("此數為負數且為偶數");
}
else
{
if(n%2) printf("此數非正非負,為奇數。");
else printf("此數非正非負,為偶數。");
}
}

『拾』 C語言區分int數據正負的問題

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

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