本文档展示了如何在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");
}
}

在此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");