求:C/C++怎么实现打印数组/矩阵的样子

程序返回了一个动态二维数组,我想把它打印成这个样子     ——》   

 

#include<iostream>
#include<vector>
using namespace std;

class arr {
public:
    vector<vector<int>> find(int target) {
        vector<vector<int>>vec;
        vector<int>res;
        int sum = 0, limit = (target - 1) / 2;
        for (int i = 1; i <= limit; ++i) {
            for (int j = i;; ++j) {
                sum += j;
                if (sum > target) {
                    sum = 0;
                    break;

                }
                else if (sum == target) {
                    res.clear();
                    for (int k = i; k <= j; ++k) {
                        res.emplace_back(k);
                    }
                    vec.emplace_back(res);
                    sum = 0;
                    break;
                }
            }
        }
        return vec;
    }
    
};


vector<vector<int>> test01(int n)
{
    
    arr p1;
   return p1.find(n);
    
   // 这里想把返回值打印成 内个样子
    
}

int main()
{
    int n;
    cin >> n;
    test01(n);
    return 0;
}

 


void test01(vector<vector<int>>q)
{
    cout << "[";
    for (int i = 0; i < q.size(); i++) {
        cout << "[";
        vector<int>a = q[i];
        for (int j = 0; j < a.size(); j++) {
            if (j != a.size() - 1) cout << a[j] << ',';
            else cout << a[i];
        }
        if (i != q.size() - 1) cout << "],";
        else cout << "]";
    }
    cout << "]";
}