c語言數字長度
『壹』 c語言一個int型到底可以表示多大的數字
其實int多大,取決於你的系統,以及編譯器,你如果是16位的系統,一個int
就是16位,也就是佔2個位元組,無符號整數最大就是2^16,32位就是2^32,long在16位機上是32位,但是由於站位的分配,a*10^b要分成a,b兩部分,所以不好說,32位機上和int一樣也是32位(但是由於是科學記數所以比整形大得多)。恩就怎麼多,你如果想測試你機子的,數據長度可以用
printf("
int長度=%d,long長度=%d",sizeof(int),sizeof(long));就可以知道了,不妨去試試,恩就這么多了。
『貳』 c語言新工號求數字的最短長度
c語言新工號求數字的最短長度用帶轉義字元的字元串。
字元串「abc
」,其中的
為轉義字元、換行符,計算字元串長度時只能計作一個字元,所以該字元串的長度為4而不是5。
『叄』 c語言中查看小數長度
c語言中查看小數長度的方法代碼如下:
1)如果按%s輸入,也就是按字元串格式輸入,先找到小數點的位置,然後統計下小數點後數字的長度。
具體實現可參考:
#include
#include
#include
intmain(intargc,char*argv[])
{
chara[128];
while(scanf("%s",a)!=EOF)
{
if(strstr(a,".")!=NULL)
printf("%d
",strlen(strstr(a,".")+1));
else
printf("0
");
}
system("pause");
return0;
}
2)如果按%f(對應float類型小數)或者%lf(double類型的小數)方式讀入,則需要先去掉整數部分,然後看小數部分一直乘10減去整數部分,知道等於0,統計,乘了幾次10,但是由於浮點數在計算機中存的並不是准確值,這個往往得不到正確的結果。可以使用sprintf(str,"%g",f);,然後由於f畢竟不是准確值,還是會出現有些問題,源碼如下:
#include
#include
#include
intmain(intargc,char*argv[])
{
chara[128];
floatf;
while(scanf("%f",&f)!=EOF)
{
sprintf(a,"%g",f);
if(strstr(a,".")!=NULL)
printf("%d
",strlen(strstr(a,".")+1));
else
printf("0
");
}
system("pause");
return0;
}
%在c語言中有兩種釋義,一是求余符號,經常會用到判斷一個數是不是能被另一個整除。二是引導符,用於引導輸入輸出項表列的格式。
在scanf、printf這樣的函數中,將參數類型與輸入/輸出句子中的相應位置相對應所使用的轉義標志符。%c單個字元輸出的意思;%s是輸出字元串;%d是輸出整型;%f是輸出整型。其中常用的有%c--對應字元型char%s--對應字元串型char*(char[])%d--對應整形int%ld--對應長整形long%x--對應十六進制整數,大於9的字母小寫%X--對應十六進制整數,大於9的字母大寫%u--對應無符號整形unsignedint。
『肆』 C語言編程問題 如何求一個數字的長度
#include<stdio.h>
#include<string.h>
voidmain()
{
intn;
charstr[50]={'