回 帖 发 新 帖 刷新版面

主题:哪位高手能帮帮小弟!

程序代码是这样的:
#include<iostream.h>
void main()
{
int a;
A:
cout<<"请输入一个整数"<<endl;
cin>>a;
if(!cin)
{
cout<<"你输入的格式有误,请重新再输入"<<endl;
cin.clear();
cin.ignore(1000,'\n');
goto A;
}
else
cout<<"你输入的这个数是"<<a<<endl;
}
验证一下23,as,e,q1都行。可是当输入的是"数字加字母"时(例如入234erj时),它却人把这个字符串的当成是所输入的数字(它只会输出234),而把后面的字母全部省略掉队;
我想知道怎么判断所输入的不是数字加字母,而是整数。多谢了!

回复列表 (共1个回复)

沙发

恩,你的这个方法我也不清楚,不过我想到的方法是把输入的都保存成一个字符串,然后再去判断,不管是一个个字符判断还是其他的什么方法。

我来回复

您尚未登录,请登录后再回复。点此登录或注册