C语言怎么验证输入的合法性?

来源:百度知道 编辑:UC知道 时间:2024/05/25 22:47:29
用户输入一个编号,怎么验证用户输入的合法性呢?
要求:编号只能为1到1000之间的整数。
不能为空,不能是字符,不能是小数,不能超出1--1000,错误要重新输入
例如:直接按回车不行,输入1.2不行,输入aab不行,输入2.a不行

告你一简单的方法

for一个1到1000的循环,只要输入的不是其中一个就重新输入。。。^_^

不文明的人走开

【1】将整个输入数据作为字符串处理 char*
【2】用isdigit判断每个字符是否是数字,否转【5】
【3】if语句判断范围,是转【4】,否转【5】
【4】输入合法
【5】输入非法

//-----------------------------------------------------------
功 能: 判断字符c是否为数字
用 法: int isdigit(int c);
头文件:#include <ctype.h>
说明:当c为数字0-9时,返回非零值,否则返回零。
举例:
// isdigit.c
#include <syslib.h>
#include <ctype.h>

main()
{
int c;

clrscr(); // clear screen
c='a';
printf("%c:%s\n",c,isdigit(c)?"yes":"no");
c='9';
printf("%c:%s\n",c,isdigit(c)?"yes":"no");
c='*';
printf("%c:%s\n",c,isdigit(c)?"yes":"no");
getchar();
return 0;
}