1 1. 为什么需要数组? 2 为了解决大量同类型数据的存储和使用问题 3 为了模拟现实世界 4 2. 数组的分类 5 一维数组: 6 怎样定义一维数组 7 格式: 数据类型 数组名[元素个数] ; 8 为n个变量连续分配存储空间 9 所有的变量数据类型必须相同 10 所有变量所占的字节大小必须相等 11 //例子 12 int a[5] ; 13 一维数组名不代表数组中的所有元素 14 一维数组名代表数组第一个元素的地址 15 有关一维数组的操作 16 初始化 17 1. 完全初始化 18 int a[5] = {1,2,3,4,5} ; 19 2. 不完全初始化 //未被初始化的元素自动为零 20 int a[5] = {1,2,3} ; 21 3.不初始化 //所有元素都是垃圾值 22 int a[5] ; 23 4.清零 24 int a[5] = {0} ; 25 赋值 26 排序 27 求最大/最小值 28 倒置 29 查找 30 插入 31 删除 32 33 二维数组 34 格式:数据类型 数组名[行数][列数] ; 35 int a[3][4] ; 36 //总共是12个元素可以当做是3行4列看待,依次为: 37 a[0][0] a[0][1] a[0][2] a[0][3] 38 a[1][0] a[1][1] a[1][2] a[1][3] 39 a[2][0] a[2][1] a[2][2] a[2][3] 40 int a[m][n] ;//该二维数组右下角位置坐标元素只能是a[m-1][n-1] 41 42 初始化: 43 int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12} ; 44 int a[3][4] = 45 { 46 {1,2,3,4} , 47 {5,6,7,8} , 48 {9,10,11,12} , 49 } ; 50 51 操作: 52 输出二维数组的内容 53 int a[3][4] 54 { 55 {1,2,3,4} , 56 {5,6,7,8} , 57 {9,10,11,12} , 58 } ; 59 60 int i,j ; 61 //输出数组内容 62 for (i=0; i<3; ++i) 63 { 64 for (j=0; j<4; ++j) 65 printf("%d",a[i][j]) ; 66 printf("\n") ; 67 } 68 对二维数组进行排序 69 求每一行的最大值 70 判断矩阵是否对称 71 矩阵的相乘 72 73 74 多维数组 75 是否存在多维数组 76 答:不存在,因为内存是线性一维的 77 n维数组可以当做每个元素是n-1维数组的一维数组。 78 例如: 79 int a[3][4] ; 80 //该数组是含有3个元素的一维数组 81 只不过每个元素都可以再分成4个小元素 82 int a[3][4][5] ; 83 //该数组是含有3个元素的一维数组 84 只不过每个元素都是4行5列的二位数组 85 86
[编程笔记]第五章 数组
猜你喜欢
转载自www.cnblogs.com/lx17746071609/p/10216259.html
今日推荐
周排行