C語言-----如何用C語言判斷一個數是不是整數
如果用實型變數x接收一個數或通過計算得到一個數後要知道它是不是整數,沒有很好的辦法.因為實數在計算機中不能準確的儲存,所以不能直接判斷兩個實型量是否相等,(實型和整形是不能直接比較的,要做一步型別轉換才能比較)首先要明確能允許的誤差是多少.比如,一般情況當誤差的絕對值小於10-8時我們可以認為兩個實數是相等的.
第一種方法:
#include <stdio.h> #include <math.h> float x; ... if(fabs(x-(int)x)<1e-8) printf(“x是一個整數\n”); else printf(“x不是一個整數\n”);
第二種方法 :
int c = (int)b,d = (int)(b + 0.999999)
if( c == d )
printf(“是整數\n”);
else
printf(“不是整數\n”);
第三種方法 :
float b;
...
if(b - (int)b == 0)
printf(“是整數\n”);
else
printf(“不是整數\n”);
第四種方法 :
float b; ... if( b != (int)b ) printf(“不是整數\n”); else printf(“是整數\n”);
相關推薦
用三元運算子判斷一個數是否為偶數!
//正在學Java,呵呵,挺簡單的,拿來練練語法而已。 import java.util.Scanner; //引入Scannet類,用於輸入 public class OuShu { public static void main(String args[]){
巧用&符號,判斷一個數的奇偶性,判斷一個數(x)是否是2的n次方
判斷一個數的奇偶性,是在C++ PRIMER習題集看見的,感覺有意思: 假設有一個整數x哈,假設 那麼就有:if(x&1) cout<<"奇數"<<endl;
C語言 判斷一個數是不是素數(用函式表示)
# include <stdio.h> int f(int n) //定義函式f { int i; int sum=0; if(n!=2) {
c語言 實現一個函式,判斷一個數是不是素數
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
C語言之判斷一個數是否為素數
#include "stdio.h" #include"time.h" #include"math.h" int isPrimeNumber(int number) { //判斷是否為素數 float sqrtOfNum = sqrt((double) number); for
【C語言】判斷一個數是不是迴文數
所謂迴文數,就是說一個數字從左邊讀和從右邊讀的結果是一模一樣的。 首先,我們來判斷一下一個數是否為迴文數: #define _CRT_SECURE_NO_WARNINGS 1 #include&
C語言判斷一個數是偶數還是奇數
/** *如果一個數能被2整除且餘數為0 返回1 佛則返回 0 */ int isOuShu(int i) { if(i%2==0) return 1; else return 0; } void main() { int a;
C語言判斷一個數是否為素數
所謂素數,是指除了1和本身之外,不能被其他任何整數整除的數。 判斷一個數n(n>=3)的方法:將n作為被除數,將2到(n-1)各個整數先後做除數,如果都不能被整除,則n為素數。 演算法分析: S1:輸入n的值 S2:i=2(i作為除數) S3:n被i除,得餘數r,r=
c語言:實現一個函式,判斷一個數是不是素數。
實現一個函式,判斷一個數是不是素數。程式:#include<stdio.h>#include<math.h>int prime(intnum) //prime表示素數{int i
如何判斷一個數是否是質數(C語言)-超詳細
質數是只能被1或者自身整除的自然數(不包括1),稱為質數。 判斷是否是質數最直觀和簡單的方法就是從2開始直接除,能除盡(餘數為0)就不是質數。則C語言實現為: int isprime(int m) {
【c語言】判斷一個數n能否同時被3和5整除
// 判斷一個數n能否同時被3和5整除 #include <stdio.h> int main() { int n; printf("請輸入一個整數:"); scanf("%d",&n); if( n % 3 == 0 &&
C語言-----如何用C語言判斷一個數是不是整數
如果用實型變數x接收一個數或通過計算得到一個數後要知道它是不是整數,沒有很好的辦法.因為實數在計算機中不能準確的儲存,所以不能直接判斷兩個實型量是否相等,(實型和整形是不能直接比較的,要做一步型別
C語言經典演算法100例-030-判斷一個數是否為迴文數
所謂迴文數,即是正序與逆序相等的一個數,如121,12321,10501等。寫程式判斷輸入的數是否為迴文數。 1.分析:表面上看,我們似乎要這麼做,把各個位分離,然後把第一個數跟最後一個數比較,第二個跟倒數第二個....等等。注意,這樣做太複雜了,迴文數的條件是正序等於逆序
c語言==判斷一個數是否為2的整數次方【不使用迴圈】
對於判斷一個數是否為2的N次方問題,通常想到的最為直接的辦法就是對這個數不斷對2取餘,為0就將該數變為該數除以2,直到最後該數為1為止。 void judge(int n) { while(!(n % 2)) { n = n
C語言:判斷一個數是否為素數
題目來源:大工慕課 連結 作者:Caleb Sung 注意事項 判斷一個數是否為質數,首先我們需要知道質數的定義:對於大於1的數,如果除了1和它本身,它不能再被其它正整數整除,那麼我們說它
C語言 java 判斷一個數是不是質數
#include<stdio.h> #include<math.h> /* 質數判斷的基本思路:對於正整數n(n>1),用2~根號n去除它,如果存在整除的情況,則n不是質
【C語言】判斷一個數的奇偶(位操作)
//判斷一個數的奇偶 #include <stdio.h> int is_signal(int num) { if (num & 1) return 1; else r
【C語言】判斷一個數是否為2的n次方
//判斷一個數是否為2的n次方 #include <stdio.h> int is_two_n(int num) { if ((num&(num - 1))) //去掉一個1
用python語言來判斷一個數是否是水仙花數?
#用python語言來判斷一個數是否是水仙花數? #水仙花數: # 1) 一個三位正整數 ( 即取值區間 [100,1000) ) # 2) 個位數字的立方+十位數字的立方+百位數字的立方=它本身 (即數字 abc = a**3 + b**3 + c**3) 程式碼: for
c語言用位運算實現兩個數平均數
c語言用位運算實現兩個數平均數 對於十進位制而言,向右移動一位就是除以10, 對於二進位制而言,向右移動一位就是除以2, 對於八進位制而言,向右移動一位就是除以8, 對於十六進位制而言,向右移動一位就是除以16 因為計算機是通過二進位制來計算的,知道這個規律之後我們可以編寫程式碼 int