采用句子并输出元音,辅音等数量的程序

时间:2016-02-07 16:41:37

标签: c++

enter code here 
int main()
{

std::string input;
std::cin >> input;

while (input != "quit")
{
// do stuff
std::cin >> input; // get another input

}

return EXIT_SUCCESS; // if we get here the input was quit

问题是,它根本不会提示用户输入单词。如果我输入"退出",它就会结束,这样才能正常工作。否则,如果我输入其他内容,然后输入quit,它也会退出。我该怎么做才能纠正这个问题?

通过我的研究,我能够在这里找到一个类似的程序使用案例,但这对我来说似乎有点乏味。我被指示使用isalpha函数,该函数接受单个字符作为参数,并返回一个布尔指示符,指示该字符是否为字母。

1 个答案:

答案 0 :(得分:0)

尝试这个小型的说明性程序:

#include <iostream>
#include <cstdlib>

int main(void)
{
  std::cout << "This is a prompt, enter some text:\n";
  std::string  the_text;
  std::getline(std::cout, the_text); // Input the text.
  std::cout << "\n"
            << "The text you entered:\n";
  std::cout << the_text;
  std::cout << "\n";

  // Pause the program, if necessary.
  std::cout << "\n\nPaused.  Press Enter to continue...\n";
  std::cin.ignore(10000000, '\n');

  // Return status to the Operating System
  return EXIT_SUCCESS;
}

如您所见,在输入之前输出指令短语称为提示用户

编辑1:在while循环中提示
在您的情况下,您需要在输入之前提示用户:

while (input != "quit")
{
  // Do stuff

  std::cout << "Enter text or \"quit\" to quit: ";
  std::cout.flush();  // Flush buffers to get the text on the screen.
  std::cin >> input;
}