c语言中如何判断输入的是字符还是数字

作者&投稿:咎克 (若有异议请与网页底部的电邮联系)
C语言:如何判断输入的是数字还是其他字符~

有很多方法:
1、可以用sacnf或gets函数直接接收输入的字符串,然后用循环遍历字符串中每一个字符,判断其是字母还是数字。
2、可以用循环调用getch()或getchar()函数来一个一个字符的接收输入,同时判读输入的是字母还是数字。
至于怎么判读是字母还是数字,很简单,假设字符c,
满足 (c>='a'&& c='A' && c<='Z')就是字母。
满足 (c>='0' && c<='9')就是数字。

需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。

2、在test.cpp文件中,输入C语言代码:
char a;scanf("%c", &a);
if (a '9') {printf("输入错误
");}

3、编译器运行test.cpp文件,此时成功判断了输入的是字符而打印了“输入错误”的提示。

可以使用代码进行判断:

#include<stdio.h>

intmain()

{

charc;

while(scanf("%c",&c)!=EOF)

{

getchar();

if(c>='0'&&c<='9')

printf("%c是数字
",c);

elseif(c>='a'&&c<='z'||c>='A'&&c<='Z')

printf("%c是字母
",c);

elseprintf("%c是特殊字符
",c);

}

return0;

}

扩展资料

C语言判断输入是否是数字

intdigit;

printf("pleaseinputainteger
");

intret=scanf("%d",&digit);

if(0==ret)

{

printf("youshouldinputainteger
");

system("pause");

return0;

}



1、可以用sacnf或gets函数直接接收输入的字符串,然后用循环遍历字符串中每一个字符,判断其是字母还是数字。

2、可以用循环调用getch()或getchar()函数来一个一个字符的接收输入,同时判读输入的是字母还是数字。

3、假设字符c,满足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母,满足 (c>=0 && c<=9)就是数字。

扩展资料:

getch():

所在头文件:conio.h

函数用途:从控制台读取一个字符,但不显示在屏幕上

函数原型:int getch(void)

返回值:读取的字符

例如:

char ch;或int ch;

getch();或ch=getch();

用getch();会等待你按下任意键,再继续执行下面的语句;

用ch=getch();会等待你按下任意键之后,把该键字符所对应的ASCII码赋给ch,再执行下面的语句。

参考资料来源:百度百科-getch()



对了,刚才经过试验发现ctype.h里面的函数都不能判定输入的字符。。。拿isalpha来说,其函数原型为
int
isalpha(int
ch);其规定了ch为int型的,如果输入是字符的话就会程序错误,所以只能在程序本身里先赋好值,就像ch=\'a\'
这样判断才行,而输入的东西是不确定的,只有先赋值才不会有函数类型的判断错误。。。不知道本人说的对不,这是我刚才试出来的,我刚学c不久。。。

需要准备的材料分别有:电脑、C语言编译器。

1、首先,打开C语言编译器,新建一个初始的.cpp文件,例如:test.cpp。

2、其次,在test.cpp文件中,输入C语言代码:char a = getchar(); getchar();

if (a <= '9' && a >= '0') printf("数字");else printf("字母");

3、然后,编译器运行test.cpp文件,输入数字,此时会成功判断输入内容为数字。

4、最后,输入字母,此时成功判断了输入内容为字母。



1 通过getchar读入一个字符。
2 对字符判断,如果字符在'0'到'9'之间,则为数字,否则为字符。
3 根据判断结果,输出程序运行结果。
代码:
int main()
{
int c = getchar();

if(c >= '0' && c<='9') printf("%c 是数字\n",c);

else printf("%c 是字符\n",c);

}


C语言:怎么用if()判断输入的汉字是否是要求的汉字
定义一个字符串就可以为了 然后用 strcpy()比较 include <stdio.h>#include <string.h>int main(void){ char s[100]; printf("请输入汉字"); gets(s); if(strcpy(s,"哈哈")) printf("Yes!"); }

C语言输入函数scanf判断输入是否为数值问题!
“scanf 是怎么判断输入是否为数值的?”:通过判断输入值是否和占位符类型匹配判断,如果匹配,返回匹配个数,不匹配,则函数结束,后面的占位符也不再判断。当然你这里只有一个占位符“%lf”,就只有0,1两种返回方案。“是scanf的返回值吗?”:返回值是输入值和占位符匹配决定的。“那如果换成%s%c...

java 中如何判断输入的是int还是double?
你可以用一个字符串来保存你的输入,然后你可以将输入利用String类库中的函数进行转换,或者利用contains()函数看,是否还有小数点。System.out.println("please input the ten strings:");Scanner sc = new Scanner(System.in);String number = sc.nextLine();if(number.contains(".")){ \/\/...

c语言如何循环判断:用户输入“y”或者“n”,若用户输入了“y”则输出...
供参考 while (scanf("%c",&a)!=EOF){ if(a=='y')printf("正确")else if(a=='n')printf("错误")else printf("输入错误,请重新输入")}

C语言中怎样判断(用编程的方法判断)输入的内容是哪种类型的?
include<stdio.h> int fun(char *s){ int i=0, c=0;while(*s++!=0){ if(*s>='0'&&*s<='9') i=1;else if((*s>='a'&&*s<='z')||(*s>='A'&&*s<='Z')) c=-1;} return i+c;} void main(){ char s[100]; int i=0;gets(s);i=fun(s);switch (i){ ...

c语言输入值的判断
getchar("%c",&x);if (c=getchar(x))改成 x = getchar();if ('c' == x)完整的 include<cstdio>main(){char x;printf("把大象放冰箱,总共分几步");printf("a.一步\\t");printf("b.两步\\t");printf("c.三步\\n");x = getchar();if ('c' == x) printf("你的...

在C++中如何判断“空格”键输入?
C++输入string型字符串时如何读入空格。include<iostream> int main(void){ char ch;std::cin>>ch;if(ch == '')std::cout<<"Blank"<<std::endl;else std::cout<<"Other"<<std::endl;return 0;}

C语言如何使用输入字符,然后判断?
\/* Note:Your choice is C IDE *\/ include "stdio.h"void main(){ char a,b,c;int p=1;scanf("%c%c%c",&a,&b,&c);if((a=='X'&&b=='L'&&c=='Y'))p=p+3;printf("你的名字的简写是:%c%c%c %d",a,b,c,p);} \/ XLY 你的名字的简写是:XLY 0 注:输入格式 ...

c语言中判断一个输入的数为偶数还是奇数的程序怎么编写
1、开启一个虚拟机,打开终端(ctrl+alt+t),然后用vi新建并进入编辑一个c文件(vi a.c)。2、按“i”进入输入模式,开始编写程序,因为linux下输入中文还要进行其他设置,所以是在notepad++下编辑的。3、先定义一个整数a。4、判断a是否能被2整除,即a对2取余是否为0,为0则此数为偶数,反之为...

c语言 输入一个字符,判断是字母,数字,还是特殊字符?
);return 0;} include <stdio.h>void main(){char ch;printf("请输入一个字符:\\n");ch=getchar();if(ch>='a'&&ch<'z'||ch>='A'&&ch<='Z')printf("该字符是字母");else if(ch>='0'&&ch<='9')printf("该字符是数字");elseprintf("该字符是特殊字符");} ...

东营区15690488696: C语言 如何判断输入的是数字还是字符 -
郸怕特尔: 你这个程序与“输入的是字符还是数字”没有关系. 关键是不能用double类型的r与0直接这样进行比较:r!=0应该像下面这样写: const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x <= EPSINON) 不可将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“<=”此类形式.

东营区15690488696: 我是一个自学新手,我想问下在C语言里面怎么判定输入的是字符还是数字? -
郸怕特尔: 可以if语句判断.例如判断是不是数字,可以用下面这条if语句判断 if('0'<=ch && ch<='9') printf("ch is digit\n"); 此外,提醒一下,数字也是字符.你说的是判断是字母还是数字吧?如果想判断是不是字母,这么判断: if(('a'<=ch && ch<='z') || ('A'<=ch && ch<='Z'))printf("ch is alphabet“);

东营区15690488696: 如何判断输入的字符是数字,字母还是其他字符 C语言 -
郸怕特尔: ')是先执行getchar(),就是从键盘读入一个字符,再将这个字符赋值给c,然后再执行while(c!='\n'),就是判断是否是回车符. scanf("%d%d%d,a,b,c")里边%d是格式控制输入,就是一大串的相同格式的东西一起输入 至于为什么不用它,就是要根据你的题目要求了 因为你是用scanf的时候输入回车符不会停止输入,比如scanf("%d%d%d,a,b,c")你先输入一串数字,回车,那只是把你刚才输入的数字赋值给a,接下去的就是赋值给b,c,d…… 另外,团IDC网上有许多产品团购,便宜有口碑

东营区15690488696: C语言如何判断输入的是数字还是字符? -
郸怕特尔: 可以利用getchar函数的返回值和输入字符的ASIIC码值来比较,数字的ASIIC码有一个范围,范围之外就是字符

东营区15690488696: C语言怎么判断输入的是数字还是字符 -
郸怕特尔: 你是知道自己想要输入的是字符还是数字,对吧? 如果是这样,你就加一个标志符,用来判断输入的东西是不是你要的. int flag; flag = scanf("%d",&n); if(flag==1)printf("right\n"); elseprintf("wrong\n"); flag = scanf("%d",&n); //送返成功读入的数据个数.输入字母,flag为0

东营区15690488696: C语言:如何判断输入的是数字还是其他字符 -
郸怕特尔: 有很多方法: 1、可以用sacnf或gets函数直接接收输入的字符串,然后用循环遍历字符串中每一个字符,判断其是字母还是数字. 2、可以用循环调用getch()或getchar()函数来一个一个字符的接收输入,同时判读输入的是字母还是数字. 至于怎么判读是字母还是数字,很简单,假设字符c, 满足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母. 满足 (c>=0 && c<=9)就是数字.

东营区15690488696: C语言中怎么写判断输入是一个数,而不是字符等 -
郸怕特尔: 就当做字符输入,然后看字符的ACSII码 scanf("%c",&ch); if (ch >= '0' && ch <= '9') { printf("输入的是数字,值是%d\n",ch - '0'); } else if (ch >= 'a' && ch <= 'z') {printf("输入的是小写字母); } else if (ch >= 'A' && ch <= 'Z') {printf("输入的是大写字母); }

东营区15690488696: 如何判断一个输入是数字还是字符 -
郸怕特尔: #include #include //头文件.. int main() {char c;printf("输入一个字符:\n");scanf("%c",&c);if(isdigit(c)!=0) // 库函数,是数字返回非零数,否则返回0.. 在C Primer Plus语言书有printf("是\n");elseprintf("不是\n");return 0; }

东营区15690488696: c语言如何验证输入的是字母还是数字 -
郸怕特尔: //输入非数字以及不符合条件时重新输入. #include <stdio.h> #include <math.h>void main(void) { long a,b,c,h,l,x1,x2;int i,j,k; while(1){printf("Please input data a:\n");i=scanf("%d",&a);if(i==0)getchar();while(i==1){printf("Please ...

东营区15690488696: c语言怎么判断输入的是数字不是字符 -
郸怕特尔: int main() { int c = getchar(); if(c >= '0' && c else printf("%c 是字符\n",c); }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网