c语言的检查输入错误提示重新输入的问题

2025-03-10 22:42:02
推荐回答(3个)
回答1:

写一个循环 把接收输入的代码放循环里
接收一个输入的字符串
然后自己写方法判断输入内容是否合法
如果合法 就转换为类型指定类型 然后跳出循环 不合法就继续循环输入。。。。‘

如果转换类型的函数 可以返回是否转换成功 或者 会弹出 异常 那么只要判断一下返回值 或 处理一下异常捕获 就可以不用自己写方法判断输入是否合法了。。

回答2:

//可以用下面的方法
//scanf在接受到与%d不符的输入时,返回值是0,否则是1
//另外123b这种输入不会出错的,会把123赋值给i
//b123则不会了
#include

int main(){
int i;
while(scanf("%d", &i)==0){
getchar();
}
return 0;
}

回答3:

组个判断字符是否大于'0'并且小于'9',是的话跳出循环,否则重新输入