简洁明了,C++中动态定义一维数组,二维数组,三维数组

转载 2012年03月23日 00:09:00
#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 ;
}


C++ 创建三维数组的几种方法

C++ 三维数组创建的几种方法
  • HW140701
  • HW140701
  • 2016年08月24日 10:48
  • 5878

c++中创建一个三维数组

来自一个论坛
  • baoxiang100
  • baoxiang100
  • 2017年04月10日 11:32
  • 352

动态一维数组的使用

#include #include #include int myReset(char** p,int size,int new_size) { int ret = 1; int...
  • daa20
  • daa20
  • 2016年06月25日 09:34
  • 288

一维动态数组实现的矩阵类

  • 2012年10月24日 16:26
  • 45KB
  • 下载

一维动态数组的实现(c语言)

编程输入一个班的某课程的学生成绩,计算其平均分,然后输出。班级人数由键盘输入。#include #include main() { int *p = NULL,i,n,sum; pr...
  • m_hahahaha1994
  • m_hahahaha1994
  • 2016年06月07日 16:15
  • 2807

C语言的那些小秘密之动态数组

摘要的重要性是不言而喻的,每次发文章我都很纠结如何写出一个有特色的摘要来,能够以最为简短的文字向读者描述出我所要表达的东西。但是常常出现的问题是,摘要写得太简短了,读者看了不清楚文章究竟要讲啥;摘要写...
  • bigloomy
  • bigloomy
  • 2011年07月21日 16:21
  • 56259

一维动态数组和二维动态数组的创建和使用

c,c的动态数组,一维数组,二维数组
  • wj903829182
  • wj903829182
  • 2014年07月17日 08:09
  • 1687

C语言中动态分配数组

摘要的重要性是不言而喻的,每次发文章我都很纠结如何写出一个有特色的摘要来,能够以最为简短的文字向读者描述出我所要表达的东西。但是常常出现的问题是,摘要写得太简短了,读者看了不清楚文章究竟要讲啥;摘要写...
  • PengPengBlog
  • PengPengBlog
  • 2016年11月07日 16:12
  • 4659

C语言动态分配一维数组

int N,*a;     scanf("%d",&N);     a = (int *) malloc(N * sizeof(int));     for(int i = 0; i     {  ...
  • zmbbb
  • zmbbb
  • 2016年04月25日 21:42
  • 1519

C++中如何定义动态数组

首先:为什么需要动态定义数组呢?   这是因为,很多情况下,在预编译过程阶段,数组的长度是不能预先知道的,必须在程序运行时动态的给出   但是问题是,c++要求定义数组时,必须明确给定数组的大小,...
  • bzhxuexi
  • bzhxuexi
  • 2013年12月09日 21:27
  • 29872
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:简洁明了,C++中动态定义一维数组,二维数组,三维数组
举报原因:
原因补充:

(最多只允许输入30个字)