c怎麼判斷數是不是整數,c怎麼判斷一個數是不是整數

2021-05-28 18:36:19 字數 1790 閱讀 5256

1樓:好程式設計師

只能用sizeof(a),與當前機子的整數所佔位元組數比較(一般為4個位元組)。這種方法可以區別整數和實數,但也不是處處成立。例如若a為指標,則一般sizeof(a)也為4.

別的方法都不嚴格。

c語言判斷一個數是否為整數

2樓:考元修龐裳

使用截尾函式可以驗證!

截尾函式是指將小數點後面的全部丟掉!

所以,如果是整數的話,那麼截去小數點後面的應該等於原來的這個數字;

否則,便不是整數!

截尾函式:trunc(x)

判斷:if

trunc(x)=x

then

……翻譯:如果x是整數的話……

望採納!

3樓:匿名使用者

以判斷n開根號後是否是整數為例

#include

#include

main()

4樓:凌亂心扉

方法1:

#include

#include

float x;

...if(fabs(x-(int)x)<1e-8)printf(「x是一個整數\n」);

else printf(「x不是一個整數\n」);

方法2:

int c=(int)b,d=(int)(b+0.999999)if(c==d)

printf(「是整數\n」);

else

printf(「不是整數\n」);

方法3:

float b;

...if(b-(int)b==0)

printf(「是整數\n」);

else

printf(「不是整數\n」);

方法4:

float b;

...if(b!=(int)b)

printf(「不是整數\n」);

else

printf(「是整數\n」);

5樓:育知同創教育

double x;

scanf("%f",&x);

if((int)x==x)

printf("%f是整數",x);

把所輸入的數強制轉換為整數,然後判斷是否跟原來相等。

6樓:顧神明

if(int)(n+0.9999999)==n)

printf("%d為整數",n);

7樓:

c中的sqrt函式引數為double型,返回也為double,沒有其它型別

8樓:匿名使用者

沒有這種函式的,c中是沒有的

9樓:匿名使用者

一個數開根號後如果還是整數,那麼這個數必定是整數.#include \"stdio.h\"

#include \"math.h\"

main()

10樓:範韻楊凱復

你是想知道整型常量,整型變數獲取值的過程還是想知道庫函式當中如何判定輸入資料是整型?

ps:c語言是強型別語言,如果你想用庫函式輸入一個資料,那麼該庫函式要麼是針對特定輸入型別使用的,就是說你輸入的資料必須是該函式能接受的,或者能夠強制轉換的,函式事先已經知道你會輸入何種型別。要麼在函式中會要求你指定輸入資料的資料型別,比如scanf(「%s」,s);

總之,你所要輸入的資料型別必須讓庫函式知道,而不能讓函式自己去判斷你輸入的資料可能是什麼型別。

C中判斷字串是不是漢字,c 怎麼判斷字串中包含漢字

1 用ascii碼判斷 在 ascii碼錶中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 是不是漢字,abc,柯樂義 for int i 0 i text.length i else 2 用漢字的 unicode 編碼範圍判斷 漢字的 unicode 編碼範圍是...

C語言如何判斷浮點數是不是整數(說法不太嚴格)

include a可以是float double long double型if floor a a else 將其轉化為 int 型別,如果 int i i 那麼它就是小數部分全部為零的浮點數。假如a是浮點數,再定義一個整型變數int b a 再定義一個float c a b,假如c 1則浮點數a是...

c語言中判斷字元是不是字母用什麼函式

直接比較這個字元的值是不是 a z a z 就可以了啊,不用函式的 int isalpha int ch 若ch是字母 a z a z 返回非0值,否則返回0 貌似是判斷ascii值吧,在哪額範圍內,具體的忘記了。int isalpha int c c語言 輸入一個字元,判斷該字元是數字 字母 空格...