我刚刚开始学习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;
答案 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;
}