C++ 动态数组实例
一维动态数组的实例:
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int *arr; 6 int n; 7 cout<<"请输入一个整数指定数组大小:"; 8 cin>>n; 9 arr = new int[n]; 10 for(int i=1;i<=n;i++) 11 { 12 cout<<"请输入第"<<i<<"个元素:"; 13 cin>>arr[i-1]; 14 } 15 cout<<endl;//输出一个空行 16 for(int i=1;i<=n;i++) 17 { 18 cout<<"第"<<i<<"个元素是:"<<arr[i-1]<<endl; 19 } 20 delete [] arr;//动态空间释放 21 }
二维动态数组的实例:
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int **arr; 6 int n=0,m=0; 7 cout<<"请输入一个整数指定数组第一维:"; 8 cin >> n; 9 cout<<"再输入一个整数指定数组第二维:"; 10 cin>>m; 11 arr = new int*[n]; 12 for(int i=0;i<n;i++) //创建动态数组 13 { 14 arr[i] = new int[m]; 15 } 16 cout<<"*****************下面是输入部分*****************"<<endl; 17 for(int i=0;i<n;i++)//读入数组元素 18 { 19 for(int j =0;j<m;j++) 20 { 21 cout<<"请输入"<<"arr["<<i<<"]["<<j<<"]的值:"; 22 cin>>arr[i][j]; 23 } 24 } 25 26 cout<<"*****************下面是输出部分*****************"<<endl; 27 for(int i=0;i<n;i++)//输出数组元素 28 { 29 for(int j =0;j<m;j++) 30 { 31 cout<<"arr["<<i<<"]["<<j<<"]="<<arr[i][j]<<endl; 32 } 33 } 34 for(int i=0;i<n;i++)//动态空间释放 35 delete[] arr[i]; 36 delete[] arr; 37 arr=NULL; 38 }