21xrx.com
2024-12-22 22:25:07 Sunday
登录
文章检索 我的文章 写文章
如何在C++中实现重新输入,以控制不符合条件的输入?
2023-07-04 17:39:21 深夜i     --     --
C++ 重新输入 输入控制 条件判断 循环控制

在C++中实现重新输入,可以避免用户输入不符合条件的数据,保证程序的稳定性和可靠性。下面是一些实现重新输入的方法:

1. 循环输入

在输入时,可以使用while循环实现重新输入。先定义一个输入变量,然后进行输入判断。如果输入不符合条件,就重新输入即可。例如:

int num;

while (true) {

  std::cout << "请输入一个正整数:";

  std::cin >> num;

  if (num > 0) break; // 输入合法,结束循环

  std::cout << "输入错误,请重新输入!" << std::endl;

}

2. 抛出异常

在输入时,可以使用try-catch语句块抛出异常并进行重新输入。例如:

int num;

while (true) {

  try {

    std::cout << "请输入一个正整数:";

    std::cin >> num;

    if (num <= 0) throw "输入错误,请重新输入!"; // 抛出异常

    break; // 输入合法,结束循环

  } catch (const char* msg)

    std::cout << msg << std::endl; // 输出错误信息

}

3. 封装为函数

如果同样的输入判断重复出现多次,可以将其封装为一个函数,方便调用和维护。例如:

int getPositiveInt(const std::string& prompt) {

  int num;

  while (true) {

    std::cout << prompt;

    std::cin >> num;

    if (num > 0) break; // 输入合法,结束循环

    std::cout << "输入错误,请重新输入!" << std::endl;

  }

  return num;

}

使用时,只需要提供提示信息即可:

int num = getPositiveInt("请输入一个正整数:");

总之,实现重新输入可以让程序更加稳定和可靠。以上是一些常用的实现方法,要根据具体场景选择使用。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复