【问题标题】:Pushback elements of other arrays [closed]其他数组的回推元素[关闭]
【发布时间】:2020-06-10 18:25:39
【问题描述】:

我创建了两个数组 A 和 B,数组 C 应该存储 A 和 B 的第一个元素。 例如:A={1,2,3},B={4,5,6},C 必须是 {1,4,2,5,3,6}。 输入数组后,我的程序没有显示任何内容。 这是我的循环:

for(int i(0);i<3;i++){
        C.push_back(A[i]);
        C.push_back(B[i]);
}

for(int i(0);i<6;i++){
        std::cout << C[i] << " ";
}

【问题讨论】:

标签: c++ vector push-back


【解决方案1】:

试试这个:

int main()
{
    std::vector<int> A = {1,2,3};
    std::vector<int> B = {4,5,6};
    std::vector<int> C;
    for (int i(0); i < 3; i++)
    {
        C.push_back(A[i]);
        C.push_back(B[i]);
    }

    for (int i(0); i < 6; i++)
    {
        std::cout << C[i] << " ";
    }

    return 0;
}

或者您可以将其更改为:

int main()
{
    std::vector<int> A(3);
    std::vector<int> B(3);
    for (int i = 0; i < 3; ++i)
    {
        std::cin >> A[i];
    }
    for (int i = 0; i < 3; ++i)
    {
        std::cin >> B[i];
    }
    std::vector<int> C;
    for (int i(0); i < 3; i++)
    {
        C.push_back(A[i]);
        C.push_back(B[i]);
    }

    for (int i(0); i < 6; i++) 
    {
        std::cout << C[i] << " ";
    }

    return 0;
}

【讨论】:

    【解决方案2】:
    // Initilize n = length(A) + length(B)
    vector<int> C[n];
    for(int i=0;i<3;i+=2){
           C.push_back(A[i]);
           C.push_back(B[i]);
    }
    for(int i=0;i<6;i++){
        cout<<C[i];
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 2019-08-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多