㈠ 怎麼用c語言判斷一個數是否為整數(這個數是開平方出來的)
因為實型和整型變數是不能直接比較的,要做一步類型轉換才能比較首先要明確允許的誤差是多少。比如一般情況誤差的絕對值小於10-8時我們可以認為兩個實數是相等的。
代碼如下
#include<stdio.h>
#include<math.h>
main()
{
floatb,c;
c=1;
while(c>=0)//如果輸入小於0,就結束程序
{
scanf("%f",&c);
b=sqrt(c);
if(fabs(b-(int)b)<1e-8)printf("%.0f的開平方是個整數 ",c);
elseprintf("%.0f的開平方不是整數 ",c);
}
}
結果
㈡ C語言 如何判斷輸入的值是否為整數
看
scanf的返回值,是1就是讀入了一個整數。是0就是沒讀進來。
㈢ C語言如何判斷輸入的值是否為整數
循環判斷輸入的各個字元是否在'0'和『9』之間,如果所有的字元都在此區間那麼是整數,如果有一個或更多個不在此區間就不是整數。
c語言有個ctype.h
裡面有許多is函數
其中就有個iddigit函數
判斷是否為0-9
是就反悔真
不是就返回假
㈣ c語言如何判斷整數
c語言判斷兩數相除結果是否為整數可採用模運算。
%是C語言提供的「模運算」符,如8%5表示8整除5,取其餘數,結果為3
C語言要求參與模運算符兩端的數,必須是整型類數據,如:char short int long, unsigned這些類型,不能是浮點類型數據。
如,判斷一個數除以100後是不是整數,(該數是不是100的整數倍,或該數能否整除100),C判斷語句可寫成:
intx;
scanf("%d",&x);
if(x%100==0)
printf("%d是100的倍數 ",x);
else
printf("%d不是100的倍數 ",x);
㈤ 怎樣 用C語言 判斷一個數是不是整數
如果用實型變數x接收一個數或通過計算得到一個數後要知道它是不是整數,沒有很好的辦法。因為實數在計算機中不能准確地存儲,所以不能直接判斷兩個實型量(x,與表示整數的實型量,必須要同類型的量才能比較)是否相等,首先要明確能允許的誤差是多少。比如,一般情況當誤差的絕對值小於10的負8次方時我們可以認為兩個實數是相等的。所以,要使用math庫。
#include <math.h>
float x;
......
if(fabs(x-(int)x)<1e-8)printf("x是一個整數\n");
else printf("x不是一個整數\n");
㈥ c語言怎麼判斷一個數是不是整數
方法1:
#include<stdio.h>
#include<math.h>
float x;
...
if(fabs(x-(int)x)<1e-8)printf(「x是一個整數 」);
else printf(「x不是一個整數 」);
方法2:
int c=(int)b,d=(int)(b+0.999999)
if(c==d)
printf(「是整數 」);
else
printf(「不是整數 」);
方法3:
float b;
...
if(b-(int)b==0)
printf(「是整數 」);
else
printf(「不是整數 」);
方法4:
float b;
...
if(b!=(int)b)
printf(「不是整數 」);
else
printf(「是整數 」);
㈦ c語言判斷一個數是否為整數
方法1:
#include<stdio.h>
#include<math.h>
float x;
...
if(fabs(x-(int)x)<1e-8)printf(「x是一個整數 」);
else printf(「x不是一個整數 」);
方法2:
int c=(int)b,d=(int)(b+0.999999)
if(c==d)
printf(「是整數 」);
else
printf(「不是整數 」);
方法3:
float b;
...
if(b-(int)b==0)
printf(「是整數 」);
else
printf(「不是整數 」);
方法4:
float b;
...
if(b!=(int)b)
printf(「不是整數 」);
else
printf(「是整數 」);