當前位置:首頁 » 編程語言 » c語言正整數最大位數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言正整數最大位數

發布時間: 2023-07-10 03:05:49

A. c語言整數的范圍

C語言整型,一般分為char類型和int類型,不同的類型取值范圍也不盡相同。在32位系統中:

char取值范圍:-128~127

unsigned char取值范圍:0~255

int取值范圍:-2147483648~2147483647

unsigned int取值范圍:0~4294967295


在c語言中可以通過C標准庫中的limits.h頭文件,來直接使用整型類型的最大值和最小值 。示例如下:

#include<stdio.h>
#include<limits>
intmain()
{
printf("char取值范圍:%d~%d ",CHAR_MIN,CHAR_MAX);
printf("unsignedchar取值范圍:%u~%u ",0,UCHAR_MAX);
printf("int取值范圍:%d~%d ",INT_MIN,INT_MAX);
printf("unsignedint取值范圍:%u~%u ",0,UINT_MAX);
return0;
}

B. C語言, 用戶輸入一個整數, 算出這個整數裡面最大的那個數,如用戶輸入1234321,則輸出4,拜託各位了.

#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int max=0,m;
while(n>0)
{
m=n%10;
if (m>max) max=m;
n/=10;
}
printf("整數里最大的數為:%d\n",max);
}

C. 在C語言中,int類型存儲的最大的數是2^32,為什麼為什麼不是2^31

C語言中的int型在不同的機器上位數不同,其表示的數范圍也不同。鄙人假設你說的int型是32位。

C中的int型使用補碼表示,也就是32位補碼,最高位為符號位,1代表負,0代表正。一個int型變數存儲形式為x = { 符號位(1bit), 數值位(31bit) }。


一個int型變數最大值即32bit補碼能表示的正數最大值。1bit符號位為0,31bit數值位,每位可以有{0, 1}兩種組合,31位可以有2^31種組合,最大正數即數值位全為1時能取到:

二進制(0;111,1111,1111,1111,1111,1111,1111,1111) = 7FFFFFFFH,按等比數列計算結果為 2^0 + 2^1 + 2^2 + ... + 2^30 = [1*(1-2^31)] / (1-2) = 2^31 - 1


綜上所述,32bit的int型表示的最大正整數既不是2^32,也不是2^31,是(2^31 - 1) = 2,147,483,648,大約21億。

D. C語言:計算最高位數字

#include <stdio.h>

int main()
{
int n;
scanf("%d",&n);
while(n/10)n/=10;//除10,為零說明就只剩最高位了
printf("%d",n);
return 0;
}

E. 用c語言求一個短整型正整數中的最大數字

#include
<stdio.h>
#include
<math.h>

int
maxnum(int
a,int
b)
{

return
a>b?a:b;
}

void
main()
{

int
shortint
=
0
,temp
=
0;

printf("請輸入一個短整型數:
");

scanf("%d",&shortint);

if(shortint<0)
//如果輸入的是一個負數,取它的相反數

{

shortint
=
-1
*
shortint;

}

while(shortint/10>1)
//從個位往高位開始比較

{

temp
=
maxnum(temp
,
shortint%10);
//將temp與(shortint%10)中較大的數賦給temp

shortint
/=
10;

}

printf("max
number
in
this
shortint
is
:%d\n",temp);
}

F. c語言中int最大值是多少

int最大值,根據編譯器類型不同而變化。

1 對於16位編譯器,int佔16位(2位元組)。

int的最大值為32767.

2 對於32位和64位編譯器,int佔32位(4位元組)。

int的最大值為2147483647

3 可以通過列印sizeof(int)查看平台對應的int佔用位元組數。乘8後即為位數。

最高位為符號位,如位數為n,則最大值為

2^(n-1).