c語言判斷是整數
『壹』 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語言編程中如何判斷一個數是否為整數
C語言判斷是否為整數,那麼只可能是判斷輸入的值,或者字元串中的值,是否為整數。
因為一旦存儲在變數中,根據變數類型,要麼為整數,要麼為浮點數,是確定的。
一、判斷思路:
1、整數中,按十進制計算,合法字元為0到9,另外在最初位置可以有符號,即+或者-。
2、對於輸入的值,可以先存儲到字元串中,這樣轉換為判斷字元串中是否為整數。
3、先判斷第一個字元是否為+或者-, 如果是,則從第二個開始判斷,否則從第一個開始判斷。
4、對每一個需要判斷的字元,判斷是否在'0'到'9'之間,如果是則合法,否則非法。
5、一旦出現非法字元,說明不是整數。如果所有字元合法,那麼是整數。
二、參考代碼:
intis_int(char*s)//判斷s中是否為整數,如果是返回1,否則返回0.
{
char*p=s;//p指向s。
if(*p=='+'||*p=='-')//如果第一個字元為符號,則從第二個開始遍歷。
p++;
while(*p)//遍歷字元串。
{
if(*p<'0'||*p>'9')return0;//出現非法字元,返回0,表示不是整數。
p++;//判斷下一個字元。
}
return1;//所有都是合法字元,返回1,表示為整數
}
intmain()
{
chars[200];
gets(s);//讀取輸入,存到s中。
if(is_int(s))//判斷並輸出結果
printf("%s是整數 ",s);
else
printf("%s不是整數 ",s);
return0;
}
『叄』 c語言如何判斷一個數是整數還是素數
以下是判斷代碼:
#include <math.h>
#include <stdio.h>
int is_prime(int num) {
if (num <= 1) {
return 0; // 小於等於1的數不是素數
}
if (num <= 3) {
return 1; // 2和3是素數
}
if (num % 2 == 0 || num % 3 == 0) {
return 0; // 排除能被2或3整除的數
}
// 只需檢查到sqrt(num),因為如果num有因子,必有一個小於等於它的算術平方根
for (int i = 5; i * i <= num; i += 6) {
if (num % i == 0 || num % (i + 2) == 0) {
return 0; // 若能被5或者能被5+2整除的數,不是素數
}
}
return 1; // 其他情況是素數
}
int main() {
int number;
printf("Enter an integer: ");
scanf("%d", &number);
if (is_prime(number)) {
printf("%d is a prime number.\n", number);
} else {
printf("%d is not a prime number.\n", number);
}
return 0;
}
『肆』 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(「是整數 」);