Menu

Switch in switch c++ example


#include <iostream>
using namespace std;
int i=0;
void input()
{
cin >> i;
if (cin.fail())
{
cin.clear();
cin.ignore(10000,'\n');
i=10;
}
}
int main()
{
do
{
cout << "This is the main menu. Select 1 or 2 to go to sub menu 1 or 2, 0 to exit : ";
input();
switch (i)
{
case 0: cout << "Bye bye\n";
break;
case 1: cout << "\nYou are now in sub menu 1. \nSelect 1 or 2 in this sub menu 1, -1 to exit to main menu back\n";
do
{
input();
switch (i)
{
case -1: cout << "User exit sub menu 1 \n\n";
break;
case 1: cout << "User selected one in sub menu 1\n";
break;
case 2: cout << "User selected two in sub menu 1\n";
break;
default: cout << "User does not select 1 or 2, or maybe the user key in some letter\n";
}
}
while(i!=-1);
break;
case 2: cout << "\nYou are now in sub menu 2. \nSelect 1 or 2 in this sub menu 2, -1 to exit to main menu back\n";
do
{
input();
switch (i)
{
case -1: cout << "User exit sub menu 2 \n\n";
break;
case 1: cout << "User selected one in sub menu 2\n";
break;
case 2: cout << "User selected two in sub menu 2\n";
break;
default: cout << "User does not select 1 or 2, or maybe the user key in some letter\n";
}
}
while(i!=-1);
break;
default: cout << "User does not select 1 or 2, or maybe the user key in some letter\n";
}
}
while (i!=0);
}