零基础学C语言 笔记八 二维数组
2015-09-03 17:09
183 查看
二维数组 可以看成一个有行有列的面
如何声明
存放数据的数据类型 数组名[行数][列数]
声明的时候,不能省略行数和列数。
初始化,声明的同时给元素赋值
取值
数组名[行下标][列下标];
存值和取值都不能超出数组的界限
二维数组的遍历
双重循环 嵌套循环来遍历数组
6.二维数组的长度、行数、列数的计算
长度 = sizeof(数组名)/sizeof(arr[0][0]);
行数 = sizeof(数组名)/sizeof(arr[0]);
列数 = sizeof(arr[0])/sizeof(arr[0][0]);
7.二维数组在内存中的表现形式
数组在内存中开辟的空间,都是连续的
数组名 = 数组的地址 = 数组第0行的地址 = 数组第0行第0列元素的地址 =数组第0行第0列的低元素的地址
8.二维数组与函数
如何声明
存放数据的数据类型 数组名[行数][列数]
声明的时候,不能省略行数和列数。
初始化,声明的同时给元素赋值
int arr[3][4] = {{10,20,30,40},{40,50,60,70},{20,50,90,20}}; int arr[][4] = {{10,20,30,40},{40,50,60,70},{20,50,90,20}};
取值
数组名[行下标][列下标];
存值和取值都不能超出数组的界限
二维数组的遍历
双重循环 嵌套循环来遍历数组
for(int i = 0;i <rows;i++) { for(int j =0;j<cols;j++) { printf(“%d\n”,arr[i][j]); } }
6.二维数组的长度、行数、列数的计算
长度 = sizeof(数组名)/sizeof(arr[0][0]);
行数 = sizeof(数组名)/sizeof(arr[0]);
列数 = sizeof(arr[0])/sizeof(arr[0][0]);
7.二维数组在内存中的表现形式
数组在内存中开辟的空间,都是连续的
数组名 = 数组的地址 = 数组第0行的地址 = 数组第0行第0列元素的地址 =数组第0行第0列的低元素的地址
8.二维数组与函数
int main() { int arr[3][4] = {{10,20,30,40},{20,30,40,50},{30,20,40,10}}; int rows = sizeof(arr)/size(arr[0]); int cols = sizeof(arr[0]/size[0][0]); test(rows,cols,arr); } void test(int rows,int cols,int arr[][cols]) { for(int i = 0;i<rows;i++) { for(int j = 0;j<cols,j++) { printf(“%d\n”,arr[i][j]); } } }
相关文章推荐
- C语言中文件包含#include使用尖括号和双引号的区别
- C++入门经典 笔记 (第九章)高级类
- c++中输入和输入语句
- c++ primer读书笔记之c++11(三)
- C语言实验题——三个数排序
- VS2010中“工具>选项中的VC++目录编辑功能已被否决”解决方法
- 关于C++中的友元函数的总结
- 关于C语言中的cons的使用。
- 零基础学C语言 笔记七 一维数组
- C++入门经典 笔记 (第八章)创建基本类
- C语言中怎么将文件里的数据创建到(读到)链表中?
- C语言中怎么将文件里的数据创建到(读到)链表中?
- c++数组宽度计算的sizeof关于指针设想
- Effective C++ 改善程序与设计的55个具体做法 二周目笔记01
- C++ I/O流文件处理(整型,字符,字符串)
- C++智能指针原理
- C++之随笔(一)
- POJ C++程序设计 编程题#4 字符串操作
- twoSum(C++)
- 【more effective c++读书笔记】【第5章】技术(2)——限制某个class所能产生的对象数量