简洁明了,C++中动态定义一维数组,二维数组,三维数组
来源:互联网 发布:阿里云服务器退货 编辑:程序博客网 时间:2024/05/19 16:49
#include<iostream>#include <ctime>#include <cstdlib>using namespace std;int main(){int hight , row , col ;register int i , j , k ;//srand((unsigned)time(NULL)) ;////////////////////////////////////////////////////////////////////////////////////////////////////动态定义和初始化一维数组//////////////////////////////////////////////////////////////////////////////////////////////////cout<<"输入一维数组的行"<<endl;cin>>row ;int *p1 ; p1 = new int [row] ;//输入一维数组的值for( i = 0 ; i < row ; i ++ ) p1[i] = rand () % 10 ;//输出一维数组for( i = 0 ; i < row ; i ++ ) cout<<p1[i] <<' ' ;cout<<endl;//释放一维数组delete [] p1 ;////////////////////////////////////////////////////////////////////////////////////////////////////动态定义和初始化二维数组//////////////////////////////////////////////////////////////////////////////////////////////////cout<<"输入二维数组的行,列 :";cin>>row >>col ;int **p2 ;p2 = new int*[row] ;for( i = 0 ; i < row ; i ++ ) p2[i] = new int[col] ;//输入二维数组的值for( i = 0 ; i < row ; i ++ ) for( j = 0 ; j < col ; j ++ ) p2[i][j] = rand() % 10 ;//输出二维数组 cout<<"输出二位数组:"<<endl;for( i = 0 ; i < row ; i ++ ){ for( j = 0 ;j < col ; j ++ ) cout<<p2[i][j]<<' ' ; cout<<endl;} //释放二维数组for( i = 0 ; i < row ; i ++ ) delete []p2[i] ;delete []p2 ;////////////////////////////////////////////////////////////////////////////////////////////////////动态定义和初始化三维数组//////////////////////////////////////////////////////////////////////////////////////////////////cout<<"输入三维数组高,行,列 : ";cin>>hight>>row >> col ;int *** p3 ;p3 = new int**[hight ] ;for( i = 0 ; i < hight ; i ++ ) p3[i] = new int*[row] ;for( i = 0 ; i < hight ; i ++ ) for( j = 0 ; j < row ; j ++ ) p3[i][j] = new int[col] ; //输入三维数组值: for(i = 0 ; i < hight ; i ++ ) for(j = 0 ; j < row ; j ++ ) for( k = 0 ; k < col ; k ++) p3[i][j][k] = rand() ;//输出三维数组: cout<<"输出三维数组"<<endl; for(i = 0 ; i < hight ; i ++ ) { for( j = 0 ; j < row ; j ++ ) { for( k = 0 ; k < col ; k ++ ) cout<<p3[i][j][k]<<' ' ; cout<<endl; } cout<<endl; } //释放三维数组 for( i = 0 ; i < hight ; i ++ ) for( j = 0 ; j < row ; j ++ ) delete []p3[i][j] ; for( i = 0 ; i < hight ; i ++ ) delete []p3[i] ; delete []p3 ;return 0 ;}