㈠ c语言问题。输入数据要符合要求,不符合提示错误并重性输入
/*
092134179x:输入错误,继续输入,'#'结束
21344009764x:输入错误,继续输入,'#'结束
09213417921344009764
Press any key to continue
*/
#include <stdio.h>
#include <conio.h>
int main()
{ char ch = 0,s[36];
int i = 0;
while(1) {
ch = getch();
if(ch >= '0' && ch <= '9' && i < 35) {
s[i++] = ch;
putchar(ch);
}
else if(ch == '#') {
s[i++] = '\0';
break;
}
else {
printf("x:输入错误,继续输入,'#'结束\n");
continue;
}
}
printf("%s\n",s);
return 0;
}
㈡ c语言中数据输入错误了如何提示输入错误并实现要求重新输入
cin>>sth;
while(!check(sth))
{
//check
函数检查输入值,如果满足就不需要在输入,这是就返回1或者true
cout<<"enter
again,
because
it
is
invalidate"
cin>>sth;
}
㈢ C语言中怎样实现当输入的数据不符合要求时给出提示并要求重新输入
#include <iostream>
using namespace std;
void main()
{
int a,b,c,max;
cout<<"请输入\n";
while(!(cin>>a>>b>>c))
{
cin.clear(); //这是关键
cin.ignore(); //这是关键
cout<<"数据格式有误 \n";
}
max=a;
if(max<b)
max=b;
if(max<c)
max=c;
cout<<"最大值为"<<max;
}
㈣ C语言(判定输入数是否符合要求)
#include<stdio.h>
intmain()
{
intb;
printf("请输入一个大于或等于3的整数:");
scanf("%d",&b);
if(b<3){
printf("你输入的数值不符合题目要求,请重新输入! ");
}
elseprintf("OK,b=%d ",b);
}
㈤ C语言输入的字符串不符合条件,怎么提示错误并重新输入循环要怎么加上去
写一个函数(例如int hf(char*s);),判断字符串是否符合要求,不符合要求就循环,一直到符合要求为止。
循环的方式多种多样,例如下面这一种:
while(scanf("%s",&name)&&hf(name));