C语言中的IsDigit

本文档展示了如何在C语言中使用内置函数IsDigit以及不使用该函数来检查给定字符是否为数字。C语言的isdigit是一个存在于头文件中的内置函数,有助于检查字符是否为数字。

下面显示了C语言isdigit函数用于检查字符是否为数字的语法。

isdigit (<Character>);

isdigit函数将返回一个整数值作为输出。

  • 如果isdigit函数中的字符是数字,它将返回非零值。
  • 如果isdigit函数中的字符不是数字,它将返回0。

使用C语言IsDigit检查数字的程序

此程序允许您输入任何字符,并使用ctype.h头文件中提供的isdigit函数检查该字符是否为数字。

#include <stdio.h> 
#include <ctype.h>

int main()
{
char Ch;

printf("\n Please Enter any alphabet\n");
scanf("%c", &Ch);

if ( isdigit(Ch) )
{
printf ("\n Entered character is digit");
}
else
{
printf("\n Entered character is Not digit");
}
}
Check Whether Character is Digit or Not using isdigit in C

在此isdigit程序中,我们声明了一个字符变量Ch。下面的printf语句将提示用户输入他们喜欢的任何数字。

printf("\n Please Enter any character \n");

下面的scanf语句会将用户输入的字符赋值给Ch变量。

scanf("%c", &Ch);

在下一行,我们使用了C语言的If语句。请参考If语句文章以了解If条件功能。在其中,我们使用了C语言的isdigit函数。

if (isdigit(Ch))

如果上面的isdigit(Ch)条件为TRUE,则表示给定的字符是数字。因此,此C程序将打印下面的语句。

printf ("\n Entered character is digit");

如果上面的IsDigit条件为FALSE,则表示它不是数字。因此,它将打印此语句。

printf ("\n Entered character is Not digit");

不使用Isdigit检查字符是否为数字的C程序

此程序允许用户输入任何字符,并检查它是否为数字,而不使用isdigit。

#include <stdio.h> 

int main()
{
  char Ch;

  printf("\n Please Enter any alphabet\n");
  scanf("%c", &Ch);

  if (Ch >= '0' && Ch <= '9')
   {  
     printf ( "\n Entered character is digit") ;
   }
  else
   {
     printf("\n Entered character is Not digit");
   }  
}
 Please Enter any alphabet
7

 Entered character is digit

在此检查字符是否为数字的C程序示例中,如果您查看If语句。

if (Ch >= '0' && Ch <= '0')

众所周知,所有数字都在0到9之间。因此,上面的if条件将检查给定的字符是否在0到9之间。

如果上面的条件(Ch >= ‘0’ && Ch <= ‘0’)为TRUE,则给定的字符是数字。因此,它将打印下面的语句。

printf ("\n Entered character is digit");

如果上面的条件(Ch >= ‘0’ && Ch <= ‘0’)为FALSE,则给定的字符不是数字。因此,它将打印下面的语句。

printf ("\n Entered character is Not digit");

使用ASCII值检查字符是否为数字的C程序

此程序检查字符是否为数字,而不使用ASCII值。

#include <stdio.h> 

int main()
{
  char Ch;
  
  printf("\n Please Enter any character\n");
  scanf("%c", &Ch);

  if (Ch >= 48 && Ch <= 57)
   {  
     printf ( "\n Entered character is digit") ;
   }
  else
   {
     printf("\n Entered character is Not digit");
   }  
}
 Please Enter any character
0

 Entered character is digit

在此isdigit程序中,如果您查看If语句。

if (Ch >= 48 && Ch <= 57)

众所周知,所有数字的ASCII值都在48到57之间。因此,上面的if条件将检查给定的字符是否在48到57之间。

如果上面的条件 if (Ch >= 48 && Ch <= 57) 为TRUE,则表示给定的字符是数字,因此它将打印下面的语句。

printf ("\n Entered character is digit");

如果上面的条件 if (Ch >= 48 && Ch <= 57) 为FALSE,则它不是数字。因此,它将打印下面的语句。

printf ("\n Entered character is Not digit");