C ++循环回主菜单

时间:2015-06-04 01:04:16

标签: c++ loops menu clear

我刚刚开始学习C ++,我目前正在尝试构建一个程序,该程序将在其内部运行多个程序,所有这些程序都可以通过主菜单访问,我已经通过一些帮助来管理乘法图表作为我的第一个程序,用户可以选择,但我无法弄清楚如何让程序清除屏幕并重新启动主菜单,问题是我到目前为止所尝试的内容:getchar()return 0;system("PAUSE")只会在打印一行后暂停我的for循环,在某些情况下,您必须点击进入每一行。那么有没有办法让整个图表打印并让它坐在屏幕上,直到用户用一个特定的键关闭它,该键还清除屏幕并重新启动我的主菜单?在此先感谢,我已经做了一些搜索,但我现在很困惑。

这是我到目前为止所写的内容,这是我的菜单和我的图表循环...

printf("\n******************************************************");
printf("\n******************************************************");
printf("\n**         Hello and welcome to my program!         **");
printf("\n** Please select the program you would like to run! **");
printf("\n******************************************************");
printf("\n**                 - 1. Multiplication table        **");
printf("\n**                 - 2. Program B  -                **");
printf("\n**                 - 3. Program C  -                **");
printf("\n**                 - 4. Program D  -                **");
printf("\n******************************************************");
printf("\n******************************************************");
printf("\n ");
scanf("%d", &selection);
system("CLS");

switch (selection) {

    case 1:  
        int i, j;    

        printf ("   |");    
        for (i = 1; i <= 10; ++i)    
            printf ("%#3d   ", i);    
        printf ("\n");    

        for (i = 1; i < 64; ++i)    
            printf ("-");    
        printf ("\n");    

        for (i = 1; i <= 10; ++i) {    
            printf ("%#2d |", i);    
            for (j = 1; j <= 10; ++j)    
                printf ("%#3d   ", i * j);    
            printf ("\n");
        }

        break;

1 个答案:

答案 0 :(得分:0)

这里有很多问题,没有C ++。回答C。

Clearing the screen在其他地方被打死了。

至于循环,将上面的代码放到while循环中并添加第五个选择:exit。

bool done = false;
while(!done)
{
    printf("\n******************************************************");
    printf("\n******************************************************");
    printf("\n**         Hello and welcome to my program!         **");
    printf("\n** Please select the program you would like to run! **");
    printf("\n******************************************************");
    printf("\n**                 - 1. Multiplication table        **");
    printf("\n**                 - 2. Program B  -                **");
    printf("\n**                 - 3. Program C  -                **");
    printf("\n**                 - 4. Program D  -                **");
    printf("\n**                 - 5. Exit       -                **");
    printf("\n******************************************************");
    printf("\n******************************************************");
    printf("\n ");
    scanf("%d", &selection);
    system("CLS");

    switch (selection)

    {

     case 1:
          {    
            int i, j;    

              printf ("   |");    
                for (i = 1; i <= 10; ++i)    
                  printf ("%#3d   ", i);    
                  printf ("\n");    

                  for (i = 1; i < 64; ++i)    
                  printf ("-");    
                  printf ("\n");    

                for (i = 1; i <= 10; ++i){    
                    printf ("%#2d |", i);    
                    for (j = 1; j <= 10; ++j)    
                    printf ("%#3d   ", i * j);    
                    printf ("\n");

               }

               break;
     case 5:
         done = true;
         break; 
}