数组的表示方法

一,C语言中的数组:

类型说明符 数组名 [常量表达式];
数组长度一旦声明,不可改变不可追加
声明一个int类型的数组 如: int[ ] arr; 或int arr[ ];
给数组分配空间 arr=new int[5];
给数组赋值
arr[0]=1; 0代表的是数组的第1个元素 ,元素下标为0
arr[1]=1; 1代表的是数组的第2个元素 ,元素下标为1
int a[10]; /* 说明整型数组a,有10个元素 /
float b[10], c[20]; /
说明实型数组b,有10个元素,实型数组c,有20个元素 /
char ch[20]; /
说明字符数组ch,有20个元素 */
程序:
#include <stdio.h>
#include <string.h>
void main()
{
int a[10]={0}; //所有初始化为0
int b[5]={1,2,3,4,5}; //d[0]=1,d[1]=2,d[2]=3…
int c[10][20]={0}; //所有初始化为0
int d[3][2]={{1,2},{3,4},{5,6}}; //c[0][0]=1,c[0][1]=2,c[1][0]=3,c[1][1]=4…
int e[9][10];
memset(e,0,sizeof(e)); //所有初始化为0
}

二,Java中的数组:

数组是在内存中存储相同数据类型的连续的空间;声明一个数组就是在内存空间中划出一串连续的空间。
数组名代表的是连续空间的首地址;通过首地址可以依次访问数组所有元素;元素在数组中的排序叫做下标从零开始。

数组的使用
数组长度一旦声明,不可改变不可追加
声明一个int类型的数组
int[ ] arr; 或int arr[ ];
如:
int[ ] arr={12,3,4,8,5,6,6,7,8,8,9,8};
int [ ] arr1=new int[ ]{12,3,4,8,5,6,6,4};
注:new int[ ]的[ ]一定不能放内存大小

public class WhatEver {
public static void main(String[] args) {
//第一种 例:
String[] test1 = new String[6];
test1[0] = “数组0”;
test1[1] = “数组1”;
//第二种 例:
String[] test2 = {“数组0”,“数组1”,“数组2”,"…"};
//第三种 例:
String[] test3 = new String[]{“数组0”,“数组1”,“数组2”,"…"};
}
}

三,matlab中的数组:

a=[1,2,5,……];[]括起来,各数值用,或者空格隔开。
特殊的a=1:1:5;表示首尾从1到5,中间公差为1;
或者a=linspace(1,5,6)表示首尾分别为1,5,一共6个数。
矩阵的话,各行之间用;,行内各数用,或者空格隔开。
a=[1,2;3,4]表示
a=[1 2
3 4]

四,Pascal中的数组:

1,数组的定义形式:
  array [<下标类型1>,……<下标类型n>] of <元素类型>
其中n称为数组的维数,每维的下标类型必须是一个顺序类型,通常为子界类型或枚举类型,其作用是指定数组下标的编制方式和下标取值范围。
例如:type
 color=(red,yellow,blue);
 sample1=array [1…10]of integer;{有10个元素的一维数组}
 sample2=arrayp[1…5,1…5]of real;{有25个元素的二维数组,依次按[1,1]……,[1,5],[2,1]……,[2,5],……[5,1],……[5,5]}
2.数组的操作
 当数组的元素类型为简单类型时,其下标变量和简单类型变量一样使用。例如:
  a[50]:=50;    a[20]:=a[5];
 一个数组,下标的起始值和终止值是在类型定义中给定的,不能在程序执行中再通过其他途径来改变,所以数组元素的个数在程序运行期间是固定不变的。数组变量作为整体仅允许同类型数组之间的赋值运算。
例如:var x,y:array[1…10]of integer; x::=y

五,python中的数组

一维数组
1.直接定义 matrix=[0,1,2,3];
2.间接定义 matrix=[0 for i in range(4)]; print(matrix);
3.数组乘法 matrix=[0]*5 ; print(matrix);

二维数组
1.直接定义(32): matrix=[[0,0],[0,0],[0,0];
2.间接定义(3
2): matrix=[[0 for i in range(2)] for i in range(3)]; print(matrix)

定义:
#!/usr/bin/python
#Author: Missa
b = [1]*10
#print b
for i in range(0,10):
print b[i],
for i in range(0,10):
print b[i]

a = [[1000]*10]*10
#print a
for i in range(0,10):
for j in range(0,10):
print a[i][j];
综上所述,数组在不同语言中的定义有所不用,在C语言和Java中尤其容易弄混。C语言中因为有指针可能出现越界,而Java中没有,不会出现越界,所以更安全可靠。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值