#include <iostream.h>
main()
{
int a;
for(;;)
{
cin>>a;
if(条件)
{cout<<“输入正确”<<endl;
break;}
else cout<<"输入有误,请重新输入!"<<endl;
}
system("pause");
}
if里面该怎么写,当输入a所定义的整形数据时程序完成,而输入其他类型的数据时,比如输入了字符型数据,则出错,返回重输。直到正确为止
#include <iostream>
using namespace std;
int main()
{
int a =-1;
for (;;)
{
cin>>a;
bool bRet = cin.good();
if(!bRet)
{
cout<< "error";
break;
}
else
{
cout << "corret";
break;
}
}
system("pause");
return 0;
}
刚去查了书,判断输入操作是否成功可以用 good()这个函数。如果为真,说明前一个操作成功,下一个操作可能成功。否则一定失败。
然后我把程序改成上面那样,就没问题了。