21xrx.com
2025-03-27 21:58:27 Thursday
文章检索 我的文章 写文章
C++如何实现重复输入?
2023-07-05 13:28:21 深夜i     30     0
C++ 实现 重复输入

C++是一门常用的编程语言,它具有很多强大的特性,其中之一就是可以实现重复输入。下面将介绍几种方法。

1. 使用while循环

while循环是一种常用的循环结构,它可以在给定的条件下一直重复执行代码块。因此,我们可以使用while循环实现重复输入。

例如,我们需要重复输入用户的名字,可以这样写代码:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string name;
  while (true) {
    cout << "Please enter your name: ";
    getline(cin, name);
    if (name.empty()) {
      cout << "Please enter your name again.\n";
    } else
      break;
    
  }
  cout << "Hello, " << name << "!" << endl;
  return 0;
}

在这个例子中,我们使用了while(true)循环,因为我们想要一直重复输入直到用户输入了正确的值。如果用户没有输入任何内容,我们会输出一个错误信息并再次请求输入。

2. 使用do-while循环

do-while循环与while循环类似,但它保证循环体内的代码至少会执行一次。因此,我们也可以使用do-while循环实现重复输入。

例如,我们需要重复输入用户的年龄,可以这样写代码:

#include <iostream>
using namespace std;
int main() {
  int age;
  do
    cout << "Please enter your age: ";
    cin >> age;
   while (age < 0 || age > 120);
  cout << "Your age is " << age << "." << endl;
  return 0;
}

在这个例子中,我们使用了do-while循环,因为我们希望至少要求用户输入一次。如果用户输入的值不在有效范围内,我们会再次要求输入。

3. 使用for循环

for循环是一种常用的循环结构,它可以在给定的范围内重复执行代码块。因此,我们可以使用for循环实现重复输入。

例如,我们需要重复输入用户的爱好,可以这样写代码:

#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main() {
  vector<string> hobbies;
  int num_hobbies;
  cout << "How many hobbies do you have? ";
  cin >> num_hobbies;
  for (int i = 0; i < num_hobbies; i++) {
    string hobby;
    cout << "Please enter your hobby #" << i+1 << ": ";
    cin >> hobby;
    hobbies.push_back(hobby);
  }
  cout << "Your hobbies are: ";
  for (const auto& h : hobbies)
    cout << h << "
  cout << endl;
  return 0;
}

在这个例子中,我们使用了for循环,因为我们知道需要输入的数目和范围。在循环体内,我们使用vector来存储用户输入的爱好,最终输出所有爱好。

总结

以上就是C++实现重复输入的几种方法:while循环、do-while循环、for循环。不同的场景使用不同的方法可以使得代码更加简洁明了。

  
  

评论区