我要求用户输入1到10之间的整数,但我想确保它们不输入两次相同的值。我怎样才能做到这一点?以下是我迄今为止...如何阻止用户输入两次相同的值?
cin >> input;
vector<int>val;
val.push_back(input);
for(int i=0; i<val.size(); i++){
if(input==val[i])
cout << "error";
exit(1);}
所以这部作品在终止程序的条件,但因为它总是停止,因为输入将被存储在val中的程序,它会发现它是没有用的通过循环并退出。有没有解决的办法? 或者我可以这样做,以便用户不能连续输入相同的值,但可以输入多次相同的值?
“种类的作品”。它完全符合您的标题:它肯定会阻止用户输入两次相同的值。但它显然不是你想要的。你做什么*想要? – Amadan
代码将永远不会有用,因为即使没有找到相同的数字arw,代码也会退出,即使它不是'exit(1);',cide也会检测输入的数字jyst是否重复。 – MikeCAT
@Amadan我想要的是不要退出程序的任何给定的输入,这是发生了什么,因为if语句总是运行真正的,因为输入存储在val中,找到,然后循环告诉程序退出。我需要用户能够输入一次任何号码,但是当输入一个号码时会中断。 – Surge