1D数组,如何用C++制作行和列

1D Array, how to make rows and Columns C++

本文关键字:C++ 数组 何用 1D      更新时间:2023-10-16

我想知道如何将一个包含10个元素的一维数组写入2行5列?我这样做是为了组织我的bubbleSort方法。

#include <iostream>
#include <string>
using namespace std;
const int NUM_ELEMENTS = 10;
void bubbleSort(int data[]){
    srand(time(0));
 int temp = 0;
 for(int i = 0; i<NUM_ELEMENTS;i++){
     data[i] = rand()%10;
     }
 for(int b = 0; b<NUM_ELEMENTS-1; b++){
    for(int x= 0; x<NUM_ELEMENTS-1;x++)
    {
     if(data[x]>data[x+1]){
      temp = data[x];
      data[x] = data[x+1];
      data[x+1] = temp;
     }
    }
 }
for(int i = 0; i<NUM_ELEMENTS; i++)    
printf("%4d",data[i]);   
}
int main()
{
int data[NUM_ELEMENTS];
bubbleSort(data); 
}

我想这就是你想要做的。将一个一维数组打印成二维数组。

int [] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int rows = 2;
    int columns = 5;
    for (int row = 0; row < rows; row++) {
        for (int column = 0; column < columns; column++) {
            System.out.printf("%d "+data[row * columns + column]);
        }
        System.out.println();
    }

输出:

1 2 3 4 5 
6 7 8 9 10