#include <iostream>
#include<iomanip>
using namespace std;
int main() {
int row;
int col;
cin>>row>>col;
//为二维开辟空间
int **p;
p=new int*[row];
for(int i=0;i<row;++i){
p[i]=new int [col];
}
for(int j=0;j<row;j++){
for(int k=0;k<col;k++){
p[j][k]=(j+1)*(k+1);
// setw(6) 用来控制输出的间隔,它只对后面输出的字符有作用,就是说后面要输出的东西
cout<<setw(6)<<p[j][k]<<":"<<setw(8)<<&p[j][k];
}
cout<<endl;
}
for(int m=0;m<row;m++)
delete[] p[m];
delete[] p;
return 0;
}
用 vector来创建二维数组
#include <iostream>
#include<iomanip>
#include<vector>
using namespace std;
int main() {
int row;
int col;
cin>>row>>col;
vector<vector <int> > vecInt(row,vector <int>(col));
for(int i=0;i<row;i++)
for(int j=0;j<col;j++)
vecInt[i][j]=i*j;
for(int i=0;i<row;i++){
for(int j=0;j<col;j++)
cout<<setw(5)<<vecInt[i][j]<<":"<<setw(9)<<&vecInt[i][j];
cout<<endl;
}
return 0;
}