gpt4 book ai didi

c++ - 如何在每次循环迭代之前清除屏幕?

转载 作者:太空宇宙 更新时间:2023-11-04 01:03:58 25 4
gpt4 key购买 nike

每次循环时如何清除屏幕?我的意思是我不想再次打印菜单。当我选择一个选项时,这会告诉我你想重复或返回主菜单或退出。是否可以使用 if/else 还是我必须为此使用 switch

do
{
cout << "\t **Manue**" << endl;
cout << "1) Print a Table " << endl;
cout << "2) Find the Prime Number " << endl;
cout << "3) Find the Factorial" << endl;
cout << "4) Exit Program " << endl;
cout << "\nPlease select an option : ";
cin >> option;
if (option == 1)
{
int a, b;
cout << "Enter the number that you want to have its table" << endl;
cin >> a;
for (int c = 1; c <= 10; c++)
{
b = c*a;
cout << "The table is " << b << endl;
}
}
else if (option == 2)
{
int num, flag = 0, i = 2;
cout << "Enter the number that you want to check is a Prime or Not :" << endl;
cin >> num;
while (i < num)
{
if (num%i == 0)
{
flag = 1;
break;
}
i = i + 1;
}
if (flag == 0)
cout << "**Number is prime**\n" << endl;
else
cout << "\n**Number is not prime**\n" << endl;
}
else if (option == 3)
{
int i, fact = 1;
cout << "Enter the number to find its Factorial" << endl;
cin >> i;
for (int n = i; n > 1; n--)
{
fact = fact *n;
cout << fact << endl;

}
}
else
{
cout << "Invalid Option entered" << endl;
}
}
while (option != 4);
return 0;
}

最佳答案

如果不使用隐藏终端可能特性的库,您将找不到一种可移植的方法。这就是编写像 curses 及其所有衍生产品如 ncurses 这样的库的原因。

年长的人仍然记得我们使用打印终端的时间,是的,就像带有串行接口(interface)的打字机:键盘上输入的所有内容都进入计算机,书写的所有内容都进入……纸张!没有希望清除菜单...

好吧,那些日子已经一去不复返了,但不要指望有一种简单的方法可以在 Windows 下的 cmd.exe 中、在类 Unix 系统的控制台上以及在任何终端仿真程序上清除屏幕。

所以你只有三个选择:

  • 严格可移植,只输出几行新行 - 没有清除,只有垂直间距
  • 不太便携并尝试在不同系统上工作的\f(但不能保证在任何地方)
  • 使用 ncurses 衍生库。

关于c++ - 如何在每次循环迭代之前清除屏幕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28415898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com