如何设置do-while循环条件C ++?

时间:2016-09-20 07:58:38

标签: do-while

我需要创建一个用户选择输入选项的菜单,但菜单选项是用字母或数字选择的。

菜单将有选项:s,d,1,2,3,4,r和q(退出程序)。

用户将输入,然后将有if else语句进一步指导编译器需要运行的代码,然后在完成所有步骤后需要返回菜单。

但是,我需要程序不仅在用户输入q时结束,而且在输入任何不在菜单上的响应时结束。但我也需要它在结束之前宣布一个声明。

我是否在while条件下定义此参数,如果是,我该怎么做?如何确保在程序结束前打印语句。

抱歉,我不熟悉编码,这可能是一个愚蠢的问题,可能没有准确询问。但任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

这里有一个基本的例子:

#include <iostream>
using namespace std;

int main ()
{
   // Local variable declaration:
   int a = 10;

   // do loop execution
   do
   {
       cout << "value of a: " << a << endl;
       a = a + 1;
   }while( a < 20 );

   return 0;
}

编译并执行上述代码时,会产生以下结果:

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
value of a: 16
value of a: 17
value of a: 18
value of a: 19

你可以在谷歌上找到很多例子和教程

答案 1 :(得分:0)

其中一个更简单的方法是创建一个大的while循环,在其中进行选择。在循环中,您应该从用户请求一个值,然后对该值进行一系列if / else语句。 (案例也有效,但如果/或者在开头时更容易理解的话)。

我基本上概述了下面的代码。很抱歉任何语法错误,我最近一直在看太多python。

keeplooping=True;
char choice;
while(keeplooping) {
    cout << "Make a choice";  //add user choices so they can see?

    cin >> choice;
    if(choice=='1') {
        //do something
    }
    else if(choice=='2') {
        //do something
    }
    //keep going....
    else if(choice=='q') {
        keeplooping=False
    }
    else  {
        keeplooping=False;
        cout << "Invalid choice";
    }
}