定义:
int a [3][4] [ ]为类型说明符
三行四列 每一个元素本身都是int型变量 最后一个元素行号为len1 -1 列号为len2 -1(a[2][3]),超过会越界访问
二维数组的引用:
二维数组可被看作是一种特殊的一维数组:它的元素又是一个一维数组。例如,可以把a看作是一个一维数组,它有3个元素:a[0]、a[1]、a[2],每个元素又是一个包含4个元素的一维数组 ,如下:
实际内存中,二维数组的存储方式(也有三大要素:单一性,有序性,连续性)
内存为线性顺序
二维数组初始化:
1.分行给二维数组赋初值:
2.可以将所有数据写在一个花括号内,按数组排列的顺序对各元素赋初值。
3.可以对部分元素赋初值。例如:int a[3][4]={{1},(5},{9)};
它的作用是只对各行第1列(即序号为0的列)的元素赋初值,其余元素值自动为0。
4.如果对全部元素都赋初值(即提供全部初始数据),则定义数组时对第一维的长度可以不指定,但第二维的长度不能省。 如 int a[ ] [4] = {1,2,3,4,5,6,7,8,9,10,11,12}
长度计算
int rows(行) = sizeof(a) / sizeof(a[0]);
int cols(列) = sizeof(a[0]) / sizeof (a[0]a[0]);
数组总字节
对二维数组取首地址时,可以取a的首元素地址,也可为a[0]或a[0][0],代表的均是同一个地址
例题:
1.计算数组边缘数据之和
2. 逆序图像镜像
3.魔方阶
字符型二维数组
求最大值
二维字符串数组的逆序
找出最大
函数
在C语言中,从用户角度看函数主要分为两类
1)标准函数:C语言内部提供的函数。 2)自定义函数:自我发挥写出的函数。自定义函数由程序员自主设计,和普通的函数一样有函数名、返回类型、形式参数等。
基本结构如下:
类型标识符:为函数的结果的数据类型
函数名:标识符,不要以标准函数命名)
形参表:被使用时需要提供的额外的线索编辑
在C语言中,调用函数主要有两个作用:1.提高代码的复用性。2.降低函数的耦合性。
在自定义函数要注意:
不能与库函数重名。
参数数据类型必须单独定义
形参与实参个数相同,类型匹配
1.main函数有且只有1个。
2.实参与形参的个数要相等,类型匹配。可以选择传变量或是常量
3.函数执行return语句之后,会立即停止运行当前函数,return语句之后的将不会执行,返回到调用参数的位置,继续向后执行代码。函数的最后一定要有返回值(函数首部类型)。
4.C语言中有默认的返回类型‘int’型。
5.被调函数要写在前,主调函数在后
6.函数内部不允许定义函数 ,函数为平行关系