c++中如何判断输入的数时字符还是数字?请举例谢谢!

2024-10-31 22:09:51
推荐回答(2个)
回答1:

通过字符的字母和数字的ASCII递增的特点来判断。
例如:
//参考代码如下:
#include "iostream"
#include "stdio.h"
#include
using namespace std;
int main()
{
char ch;
cin>>ch;
if(ch>='0'&&ch<='9')
cout<<"该字符为数字"< else if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')) //字符区分大小写
cout<<"该字符为字母"< return 0;
}
/*
运行结果:
1
该字符为数字

g
该字符为字母

E
该字符为字母
*/

回答2:

按字符或字符串读入,然后按字符AscII码判断
例如:
char st[21];
int i,b;
scanf("%s",st);
i=0;
b=1;
while(st[i]!='\0'){
if((st[i]<'0' || st[i]>'9')&&(st[i]!='.')){
b=0;
break;
}
++i;
}
if(b==0)
printf("不是数字\n");
else
printf("是一个数字\n");