"C语言怎么根据ASCII码判断输入的数据是字符串还是纯数字"

如题所述

C语言使用的读入键盘输入的函数较常用的一般有:
scanf
fscanf
sscanf
getchar
gets

scanf、fscanf、sscanf 根据你定义的字符格式来判断是字符串还是纯数字。
例如:
scanf("%d",&a); 使用了格式控制%d就表示输入的十进制整数;
scanf("%",a);控制%s就表示输入的字符串。
详细格式控制符如下:
a 读浮点值(仅适用于 C99)
A 读浮点值(仅适用于 C99)
c 读单字符
d 读十进制整数
i 读十进制、八进制、十六进制整数
e 读浮点数
E 读浮点数
f 读浮点数
F 读浮点数(仅适用于 C99)
g 读浮点数
G 读浮点数
o 读八进制数
s 读字符串
x 读十六进制数
X 读十六进制数
p 读指针值
n 至此已读入值的等价字符数
u 读无符号十进制整数
[ ] 扫描字符集合
% 读 % 符号(百分号)

gets一般直接默认输入的就是字符串,即使你输入一串数字,也会认为你输入的是字符数字;
getchar一般直接默认输入字符。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-08-07
0到9的的ascii码全是从0x30到0x39的,你只需要判断一个字符是不是在这个范围就知道是不是数字了本回答被提问者采纳
第2个回答  2012-08-07
全都当字符处理的,c语言不认识数字

"C语言怎么根据ASCII码判断输入的数据是字符串还是纯数字&...
gets一般直接默认输入的就是字符串,即使你输入一串数字,也会认为你输入的是字符数字;getchar一般直接默认输入字符。

急切!在C++中,怎样判断输入的字符串是一个有效的数字?
首先用ASCII码值判定是否输入的每个字符均为数字或者是“.",其次判定第一个字符是否为0,如果是0,看一下第二个是否为“.”,这些条件都满足后用atoi函数把字符串转化为一个数字,这样子就可以判定这个是否是有效数字了。

0amp;apos;在c语言是什么意思
01、字符0对应的ASCII码是48,48对应的十六进制数就是0x30。通常我们在编程的时候,用字符转化为数字的时候经常要用到,比如要将8转换为数字8,在语句中这样写就可以了, 8+0。这里的8就是数字。c语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。c语言中的字符0对应的ASCII码是...

c语言字符与ASCII码的转换
printf("enterchar:");scanf("%C",&a);printf("ascii=%d",a);\/\/强制转化为ascii码 }

c语言中的ascll码是什么意思?
ASCII字符集是与ANSI字符集中的前面128个(0-127)字符相同。ASCII码使用指定的7位或8位二进制数组合来表示128或256种可能的字符。标准ASCII码也叫基础ASCII码,使用7位二进制数来表示所有的大写和小写字母,数字0到9、标点符号,以及在美式英语中使用的特殊控制字符(这里需要特别注意:ASCII码与标准ASCII码的位数上的...

C语言 ——如何判断输入的是数值以外的其它数
如果输入1_@_100,则i=2;如果输入12_100_-1,则i=3;如果输入@_w_A,则i=0.本题的一个完整的c程序如下,已在win-tc和Dev-c++下调试通过。include "stdio.h"include "stdlib.h"include "conio.h"main(){ int a;printf("欢迎使用成绩等级判定系统,请输入您的成绩:");loop:while (scanf...

0是C语言字符串结束标志?
是第一个ASCII码,数字0的ASCII码是48,所以写程序你要用'\\0'结尾,比如char a[3] = {'h','i','\\0'},或者直接char a[] ="hi",编译器都会认为是字符串数组,且以'\\0'结束。你调试程序时,可以看到内存里面是0,这是ASCII码的表示,也可以看作是一个unsigned int类型。

怎么在latex中打出 amp quot a amp quot 这样的英语引号? - 知乎_百 ...
在LaTeX中输入"amp quot a amp quot"这样的英语引号涉及到TeX的双引号设计。因为ASCII编码未区分前后双引号,故使用backquote和quote实现连字。若字体区分前后引号,则ASCII双引号只能映射至其中一个。解决方法有多种。一种懒人方案是使用lstlisting,但其排版效果可能不美观。追求更好效果,可学习使用...

c语言中printf("%c ",′B′+40);在执行后的输出结果...
'B'的ASCii值是66,+40就是106,是ASCII字符'j',因此输出是j

“并且”用C语言怎么表示
并且用C语言表示方法如下:按位与 &:例子:int a=1,b=0。a=a&;b。结果a=0。=== 表达式之间的逻辑与 &;&。例子:if (a>;b &;&;a>;c);如果a>;b并且a>;c则...

相似回答