我刚开始使用 c++(来自 java),我正在尝试做一些基本的练习。这个想法是要求输入 5 以外的任何输入,如果用户输入 5,则显示一条消息,如果用户输入 5 次以外的任何内容十次,则显示另一条消息。这是代码:
void notFive () {
int count = 0;
while (count < 10) {
int input = 0;
cout << "Enter any number other than 5." << endl;
cin >> input;
if (input == 5)
break;
count++;
}
if (count == 10)
cout<<"You are more patient than I am, you win.";
else
cout << "You weren't supposed to enter 5!";
}
}
我的问题是这段代码所做的只是打印出“输入除 5 以外的任何数字”。10次,然后说“你比我更有耐心,你赢了。” 有什么想法有什么问题吗?
如果你们想要我所有的代码(以确保我不只是一个白痴),那就是:
#include <iostream>
#include <stdio.h>
using namespace std;
class Hello {
public:
void notFive () {
int count = 0;
while (count < 10) {
int input = 0;
cout << "Enter any number other than 5." << endl;
if ( ! (cin >> input) ) {
cout << "std::cin is in a bad state! Aborting!" << endl;
return;
}
if (input == 5)
break;
count++;
}
if (count == 10)
cout<<"You are more patient than I am, you win.";
else
cout << "You weren't supposed to enter 5!";
}
}hello;
int main() {
Hello h;
h.notFive();
return 0;
}