c语言如何检验一个字符串是否为数字构成,字符串长度已经定好是四位

[复制链接]
查看11 | 回复2 | 2012-12-12 11:48:58 | 显示全部楼层 |阅读模式
假设字符串保存在数组s中,可以用以下方法进行判断:
if(strlen(s) == 4 && isdigit(s[0]) && sscanf(s, "%d%c") == 1)
{
//字符串符合条件
//判断条件strlen(s) == 4检查字符串长度是否为4
//判断条件isdigit(s[0])排除首字母非数字(为空白字符)的可能
//判断条件sscanf(s, "%d%c") == 1确定由字符串开始处能读入一个整型值(即字符串前段为数字),且读入一个整型后已遍历整个字符串(因为%c)尝试读入字符失败...
回复

使用道具 举报

千问 | 2012-12-12 11:48:58 | 显示全部楼层
不判断的话是不能实现的吧。。。。你看这样能不能满足你的条件咯。。。#includevoid main(){char a[5] ;int i = 0 ;scanf("%s",a) ;while(a>='0'&&a<='9'&&i<4){i++ ;}if(i<4){printf("NO!\n"...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行