C++中动态定义一维数组,二维数组

 1 #include<iostream>  
 2 #include <ctime>  
 3 #include <cstdlib>  
 4 using namespace std;  
 5   
 6 int main()  
 7 {  
 8 int hight , row , col ;  
 9 register int i , j , k ;  
10 //srand((unsigned)time(NULL)) ;  
11   
12 //////////////////////////////////////////////////////////////////////////////////////////////////  
13 //动态定义和初始化一维数组  
14 //////////////////////////////////////////////////////////////////////////////////////////////////  
15 cout<<"输入一维数组的行"<<endl;  
16 cin>>row ;  
17 int *p1 ;  
18     p1 = new int [row] ;  
19 //输入一维数组的值  
20 for( i = 0 ; i < row ; i ++ )  
21    p1[i] = rand () % 10 ;  
22 //输出一维数组  
23 for( i = 0 ; i < row ; i ++ )  
24    cout<<p1[i] <<' ' ;  
25 cout<<endl;  
26 //释放一维数组  
27 delete [] p1 ;  
28   
29 //////////////////////////////////////////////////////////////////////////////////////////////////  
30 //动态定义和初始化二维数组  
31 //////////////////////////////////////////////////////////////////////////////////////////////////  
32 cout<<"输入二维数组的行,列 :";  
33 cin>>row >>col ;  
34 int **p2 ;  
35 p2 = new int*[row] ;  
36 for( i = 0 ; i < row ; i ++ )  
37    p2[i] = new int[col] ;  
38 //输入二维数组的值  
39 for( i = 0 ; i < row ; i ++ )  
40    for( j = 0 ; j < col ; j ++ )  
41     p2[i][j] = rand() % 10 ;  
42 //输出二维数组  
43    cout<<"输出二位数组:"<<endl;  
44 for( i = 0 ; i < row ; i ++ )  
45 {  
46    for( j = 0 ;j < col ; j ++ )  
47     cout<<p2[i][j]<<' ' ;  
48    cout<<endl;  
49 }  
50     //释放二维数组  
51 for( i = 0 ; i < row ; i ++ )  
52     delete []p2[i] ;  
53 delete []p2 ;  
54   
55 //////////////////////////////////////////////////////////////////////////////////////////////////  
56 //动态定义和初始化三维数组  
57 //////////////////////////////////////////////////////////////////////////////////////////////////  
58 cout<<"输入三维数组高,行,列 : ";  
59 cin>>hight>>row >> col ;  
60 int *** p3 ;  
61 p3 = new int**[hight ] ;  
62 for( i = 0 ; i < hight ; i ++ )  
63      p3[i] = new int*[row] ;  
64 for( i = 0 ; i < hight ; i ++ )  
65    for( j = 0 ; j < row ; j ++ )  
66     p3[i][j] = new int[col] ;  
67     //输入三维数组值:  
68    for(i = 0 ; i < hight ; i ++ )  
69     for(j = 0 ; j < row ; j ++ )  
70      for( k = 0 ; k < col ; k ++)  
71       p3[i][j][k] = rand() ;  
72 //输出三维数组:  
73      cout<<"输出三维数组"<<endl;  
74    for(i = 0 ; i < hight ; i ++ )  
75    {  
76     for( j = 0 ; j < row ; j ++ )  
77     {  
78      for( k = 0 ; k < col ; k ++ )  
79       cout<<p3[i][j][k]<<' ' ;  
80      cout<<endl;  
81     }  
82     cout<<endl;  
83    }  
84      //释放三维数组  
85    for( i = 0 ; i < hight ; i ++ )  
86     for( j = 0 ; j < row ; j ++ )  
87      delete []p3[i][j] ;  
88    for( i = 0 ; i < hight ; i ++ )  
89     delete []p3[i] ;  
90    delete []p3 ;  
91 return 0 ;  
92 }  

 

posted @ 2018-03-15 16:37  lincoln_lu  阅读(6974)  评论(0编辑  收藏  举报