首页 > 代码库 > c数组
c数组
一维数组
有三种赋值方式
1.原始的赋值
2. 初始化赋值
3.动态赋值
二维数组
二维数组定义的一般形式为
类型说明符 数组名 【常量表达式】 【常量表达式】
例如: 定义a为3 x 4(3行4列)的数组, b为5x10的数组 如下:
float a【3】【4】, b【5】【10】;
分割线:
--------------------------------------------
例如:
int a[3][4];
说明了一个三行四列的数组, 数组名为a, 其下标变量的类型为整型。
该数组的下标变量共有3x4个,感觉与python的numpy的模块很像
二维数组的定义:
二维数组在概念上是二维的,但是,实际的硬件存储器却是连续编址的, 也
就是说存储器单元是按一维线性排序的。
如何在一维存储器中存放二维数组, 可有两种方法:一种是按行排列, 即放完一行之后顺次放入
第二行。另一种是按列排列, 即放完一列之后在顺次放入第二列。在c语言中, 二维数组是按行排列的。
那么三维的如何排序呢?
二维数组元素的引用和初始化
void main(){ int a[5][3] = {{1, 2, 3},{4, 5, 6},{6,7,8},{9,10,11},{12,13,14}}; int i,j; for (i=0;i<=4;i++) { for (j=0;j<=2;j++) //注意这里, 【3】就是三个值, 所以是0-2 { printf("%d\n", a[i][j]); } //这个是得到每行的每个值,如果需要处理的话,需要第三个值 sum += a[i][j] //如果需要得到每列的值呢,就for 2 for 4 a[1][1] , a[2][1] }}
二维数组的元素互换
将一个二维数组行和列元素互换, 存到另一个二维数组中。例如:
将数组a[2][3]转化为数组b[3][2]
void main(){ int a[2][3] = {{1, 2, 3},{4, 5, 6}}; int b[3][2], i, j; for (i=0;i<=1;i++) { for (j=0;j<=2;j++) { printf("%d", a[i][j]); b[j][i] = a[i][j]; } printf("\n"); } printf("-------------"); for (i=0;i<=2;i++) { for (j=0;j<=1;j++) { printf("%d", b[i][j]); } printf("\n"); }}
c数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。