首页 > 解决方案 > 一个相当简单的程序中的小问题

问题描述

好的,所以我是编程新手,我在这方面遇到了麻烦。该程序的目的是创建一个程序,该程序要求用户输入除被要求输入数字的次数以外的任何数字。例如,不要按 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;
      }
   }
}

编辑: 谢谢你们的回答,问题出在第一个(显然没用的)条件下。(谢谢 Tobias)这是新代码:

#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;
}

标签: c++

解决方案


推荐阅读