终止具有特定字符的循环

时间:2017-07-06 06:20:56

标签: c++ loops

我想编写一个程序来终止一个具有特定字符的循环,例如“Q”或“//”,但似乎无法弄明白。这是具体细节

  

“计算一组小数的平均值的程序   用户提供的号码。该程序将要求用户输入   一次编号一个,当用户输入q时,它停止并吐出总和“

但是这需要用户输入整数,如果我输入“Q”或“//”,程序会中断并吐出垃圾。我该怎么做?

我遇到的问题是如何在不要求两个不同输入的情况下执行此操作

SELECT tmdb_movies.movie_title
,GROUP_CONCAT(DISTINCT(recommendations.recommendations_title)) as recommendations_title
,GROUP_CONCAT(DISTINCT(recommendations.recommendations_vote_average)) as recommendations_vote_average

FROM tmdb_movies  

LEFT JOIN cast ON cast.cast_tmdb_id=tmdb_movies.tmdb_id
LEFT JOIN recommendations ON recommendations.recommendations_tmdb_id=tmdb_movies.tmdb_id

Where tmdb_movies.tmdb_id= 1

GROUP BY tmdb_movies.movie_title

1 个答案:

答案 0 :(得分:3)

假设您的作业确实是您所描述的,那么您需要读取一个字符串,然后转换为double。

这样的事情会起作用:

std::string s;
std::cin >> s;
if (s == "Q" || s == "//") { ... do stuff ... }
else
{
    std::stringstream ss(s);
    double d;
    if (!(ss >> d))
    {
        std::cout << s << " doesn't appear to be a number..." << std::endl;
    }
    ... do whatever with d ... 
}

我不会为你编写代码,只是提供一些代码片段来帮助你。