21xrx.com
2024-12-22 13:14:31 Sunday
登录
文章检索 我的文章 写文章
C++如何实现一次性输入多组数据并输出结果?
2023-06-30 13:17:55 深夜i     --     --
C++ Input Multiple Data Output Result

在C++编程中,经常需要进行多次输入和输出,而有时候我们需要一次性输入多组数据,然后一次性输出多组结果。本文将介绍如何利用C++实现一次性输入多组数据并输出结果的方法。

方法一:利用while循环输入和输出

最简单的方法是利用while循环实现,即不停地输入和输出,直至满足退出条件。以下是示例代码:


#include <iostream>

using namespace std;

int main()

{

  int n;

  while (cin >> n)

  {

    // 读入n组数据

    int a, b;

    for (int i = 0; i < n; i++)

    {

      cin >> a >> b;

      // 对每组数据进行处理

      cout << a + b << endl;

    }

  }

  return 0;

}

在上述代码中,我们利用了cin的EOF(End of File,文件结束)特性,即当在输入时遇到Ctrl + Z键时,cin会停止输入,程序退出。

方法二:在一行中输入多组数据

另一种方法是在一行中输入多组数据,使用stringstream对这一行数据进行解析。以下是示例代码:


#include <iostream>

#include <sstream>

using namespace std;

int main()

{

  string line;

  while (getline(cin, line))

  {

    stringstream ss(line);

    // 将一行字符串转化为多个数字

    int a, b;

    while (ss >> a >> b)

    {

      // 对每组数据进行处理

      cout << a + b << endl;

    }

  }

  return 0;

}

在以上代码中,我们利用了getline函数读取一行字符串,然后利用stringstream对这一行字符串进行解析,得到多组数据。此外,我们还利用了stringstream的 >> 运算符重载,将字符串中的数字转化为int类型。

总结

以上两种方法都能够实现一次性输入多组数据并输出结果。第一种方法需要输入多次,适用于数据量不大的情况;第二种方法将多组数据转化为一行字符串,可以一次性输入,适用于数据量较大的情况。

  
  

评论区

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