数学:什么是数组?详细!

数学:什么是数组?详细!

数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-01
C++数组

  1.定义
  const unsigned buf_size = 512,max_files = 20; //const
  int staff_size = 27; //non const,know when running
  const unsigned sz = get_size(); //know when running
  string file[buf_size]; //ok
  double salary[max_files+1];//ok
  int test[staff_size];//error:non const variale
  int vals[sz]; //error:size not know until run time
  2.初始化
  a.在函数体内定义的内置数组,其元素没有初始化
  b.在函数体外定义的内置数组,其元素初始化为零
  c.对于类类型,不管数组在哪定义,都调用该类的默认构造函数进行初始化,若该类没有默认构造函数,则需显式初始化。
  int a[5]={0,1,2}; //a[]={0,1,2,0,0}
  string str[5]={"hi","hi"}; //str[]={"hi","hi","","",""};
  char cal[] = {'C','+','+'}; //size=3
  char cal[] = {'C','+','+',''}; //size=4
  char cal[] = "C++"; //size=4
  char cal[3] = "C++"; //error
  注意:不能象vector一样,用数组给另一数组直接初始化,或者直接赋值
  char a[3] = {'C','+','+'};
  char b[3];
  a=b; //error;
  //////////////////////////////
  char a[3] = {'C','+','+'};
  char b[](a); //error
第2个回答  2012-10-01
http://baike.baidu.com/view/209670.htm 这里面有的,很全面
第3个回答  推荐于2016-12-01
数组一词源于程序设计,是指同一种数据类型的数据集合,就像并排停的一排车、货架中一排同型号商品。举例分析会更明确:
(1)C语言中,数据类型有int、char、long、float、double、shot。有一种数据类型的数据可以放在数组中形成一组数据。如,
int a[5]; a[5]={1,5,3,4,6}; /*该数组,名为a,是int型,里面的数据都是int型的,数组元素有a[0]=1,a[1]=5,a[2]=3,a[3]=4,a[4]=6,即下限为0,上限为4,共五个元素。
(2)其他高级语言中也有类似定义,特别的是java中数组元素可以是不同数据类型,也不用指定数组长度,如,string a[]={{1,2,4,5,7},{‘a’,'c','q'}};。
还有,matlab中可以直接读取数组,如,M=imread('D:\img\pic.jpg') ;直接将三维图像数组读入变量M 中。本回答被提问者采纳
相似回答