一个相当简单的程序中的小问题

时间:2019-02-07 14:35:03

标签: c++

好吧,所以我是编程新手,对此我遇到了麻烦。该程序的目的是创建一个程序,要求用户输入除等于要求他们输入数字的次数之外的其他任何数字。例如,不要按0,不要按1,不要按2 ...,直到您按下它为止。因此,为了使程序退出,请按相应的数字。

唯一的问题是该程序似乎不仅识别了所讨论的数字,还识别了下一个数字。例如:“不要按0”,程序将把 0和1 识别为有效数字并退出程序。我不明白为什么。

这是我的代码。

#include <iostream>
using namespace std;

int main () {
   int x;      
   for (int y=0;y<=100;y++) {
      if  (x != y){
        cout << "Don't press " << y<< " :";
        cin >> x;
      } 
      if (x==y) {
        cout << "Hey, You weren't supposed to press " << y;
        break;
      }
   }
}

编辑: 谢谢你们的回答,问题出在第一个(而且显然是无用的)有条件的问题中。 (谢谢托比亚斯) 这是新代码:

#include <iostream>
using namespace std;



int main () {

int x;


for (int y=0;y<100;y++){

cout << "Dont press " << y << ":";
cin >> x;
if (x==y) {
cout <<"Hey, you shouldn't have pressed " <<y;
break;
}
}

return 0;
}

0 个答案:

没有答案