c++ - 如何在 C++ 中拆分 x 和 y 坐标

标签 c++

<分区>

对于我的 CS 入门类(class),我应该阅读类似

的内容
N = 4
(0.5,1) (0.6,1.5) (0.7,2) (0.8,2.5)

打印出来

X := [0.5, 0.6, 0.7, 0.8]
Y := [1, 1.5, 2, 2.5]

到目前为止我的代码看起来像

#include <iostream>
using namespace std;

int main()
{
  int size;
  char c;
  double point;

  cin >> c >> c >> size;

  int N = size*2;

  double *A = new double[N];
  for(int i = 0; i < N; ++i)
    cin >> c >> A[i];
  cin >> c;

  cout << A << endl;
  return 0;
}

这只是暂时读取要点...但我无法弄清楚双括号的情况。剩下的问题。任何帮助将不胜感激,谢谢!

最佳答案

您可以在 C++ 中通过 vectorpair 来尝试。可以学习vectorpair从此。

现在好了,正是你想要的:

#include <iostream>
#include <cstdio>
#include <vector>

using namespace std;

int main ()
{
    vector < pair <double, double> > v;

    int N = 4;
    for (int i=0; i<N; i++)
    {
        double x,y;
        scanf("(%lf,%lf)", &x, &y);
        v.push_back(pair <double, double>(x,y));
        getchar();
    }

    cout<< "X := ["<< v[0].first;
    for (int i=1; i<N; i++)
        cout<<" ,"<<v[i].first;
    cout<< "]"<<endl;

    cout<< "Y := ["<< v[0].second;
    for (int i=1; i<N; i++)
        cout<<" ,"<<v[i].second;
    cout<< "]"<<endl;

    return 0;
}

输入:

(0.5,1) (0.6,1.5) (0.7,2) (0.8,2.5)

输出:

X := [0.5, 0.6, 0.7, 0.8]
Y := [1, 1.5, 2, 2.5]

关于c++ - 如何在 C++ 中拆分 x 和 y 坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33513908/

相关文章:

c++ - 该算法获取所有字梯的时间复杂度是多少?

c++ - 显式初始化 std::optional 时,我应该使用 nullopt 吗?

C++:vector<string> 到 char**

c++ - 分隔符提取出一系列数据

c++ - 从 boost::array 更改为 std::array 时出现错误

c++ - 字符串相乘的有效方法

C++ 命名空间、内部类和运算符解析

c++ - 没有匹配的函数来调用 - Xcode?

.net - 什么最适合桌面小部件(占地面积小且图形漂亮)?

c++ - 在 3d View 中动态渲染 2d 板