十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
可以使用代码进行判断:
成都创新互联坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10余年网站建设经验成都创新互联是成都老牌网站营销服务商,为您提供成都做网站、成都网站建设、网站设计、html5、网站制作、品牌网站制作、小程序设计服务,给众多知名企业提供过好品质的建站服务。
#includestdio.h
intmain()
{
charc;
while(scanf("%c",c)!=EOF)
{
getchar();
if(c='0'c='9')
printf("%c是数字\n",c);
elseif(c='a'c='z'||c='A'c='Z')
printf("%c是字母\n",c);
elseprintf("%c是特殊字符\n",c);
}
return0;
}
扩展资料
C语言判断输入是否是数字
intdigit;
printf("pleaseinputainteger\n");
intret=scanf("%d",digit);
if(0==ret)
{
printf("youshouldinputainteger\n");
system("pause");
return0;
}
由于数字的ascii码值是连续的,所以可以通过与最小的数字'0'以及最大的数字'9'相比较,确定一个字符变量是否为数字。
比如
if(c='0' c='9') printf("%c 是数字\n",c);
else printf("%c 不是数字\n",c);
如果判断要经常使用,可以将该功能封装为函数:
int is_num(char c)
{
return (c='0' c='9');
}
或者宏定义:
#define is_num(c) (c='0' c='9')
先按字符串输入,然后对字符串进行检查,判定是否符合条件,若符合条件,则转为数值输出。代码如下:
#include stdio.h
#include string.h
#include stdlib.h
int chk_data( char *num )
{
int i;
for( i=0;num[i];i++ )
{
if ( num[i] '9'|| num[i] '0' ) //只要有非数字,就返回错误
return 0;
}
if ( i4 ) //都是数字,但长度超过4位,返回错误
return 0;
return 1;
}
void main()
{
char str[100];
while ( 1 )
{
printf("input :");
scanf("%s", str );
if ( chk_data( str )==0 )
{
printf("输入数据错误,请重新输入!\n");
}
else
break;
}
printf("%d\n", atoi(str) );
}
这个程序不难写,我告诉你思路和算法,你根据这个编写代码就可以了。
1.由于你输入的这一串数据可能都为数字,也可能包含其它字符,所以首先用一字符数组存放这个字符串。
2.用strlen函数计算这个字符串的长度,在此基础上借助for循环或while循环实现数组元素的遍历。
3.遍历每一个元素的同时用if语句判断这个元素的ascii码所在的范围是否在48~57之间,如果不在则中止循环,输出判断结果(即不是数字)。
4.如果最后一个元素仍然是数字,则整个字符串则为一个大数。