- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6.1 一维数组的定义和应用 6.1.1 一维数组的定义 6.1.2 一维数组元素的引用 6.1.3 一维数组元素的初始化 6.1.4 一维数组应用举例 特别说明:在数组定义时,“常量表达式”外的方括号;以及元素引用时,“下标表达式”外的方括号,都是C语言语法规则所要求的,不是以前所约定的可选项的描述符号! (4)数组元素的下标,是元素相对于数组起始地址的偏移量,所以从0开始顺序编号。 (5)数组名中存放的是一个地址常量,它代表整个数组的首地址。同一数组中的所有元素,按其下标的顺序占用一段连续的存储单元。 6.1.2 一维数组元素的引用 引用数组中的任意一个元素的形式: 数组名[下标表达式] 1.“下标表达式”可以是任何非负整型数据,取值范围是0~(元素个数-1)。 特别强调:在运行C语言程序过程中,系统并不自动检验数组元素的下标是否越界。因此在编写程序时,保证数组下标不越界是十分重要的。 2.一个数组元素,实质上就是一个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和各种运算。 3.在C语言中,数组作为一个整体,不能参加数据运算,只能对单个的数组元素进行处理! 6.1.3 一维数组元素的初始化 初始化格式: 数据类型 数组名[常量表达式]={初值表} (1)如果对数组的全部元素赋以初值,定义时可以不指定数组长度(系统根据初值个数自动确定)。如果被定义数组的长度,与初值个数不同,则数组长度不能省略。 (2)“初值表”中的初值个数,可以少于元素个数,即允许只给部分元素赋初值。 (3)根据存储类型的不同,数组有静态数组(static)和动态数组(auto)之分;根据定义的位置不同,数组有内部数组(在函数内部定义的数组)和外部数组(在函数外部定义的数组)之分。 #include stdio.h #define NUM 10 /*定义符号常量*/ main() { int data[NUM]; /*定义1个1维整型数组data*/ int i,j,temp; /*定义循环变量和临时变量*/ clrscr(); /*库函数clrscr():清屏*/ printf(Please input 10 numbers:\n); for(i=0; iNUM; i++) scanf(%d, data[i]); 6.2 二维数组的定义和引用 6.2.1 二维数组的定义 6.2.2 二维数组元素的引用 6.2.3 二维数组元素的初始化 6.2.4 二维数组应用举例 6.2.1 二维数组的定义 定义形式 类型 数组名[常量表达式][常量表达式]; 可以看作元素是一维数组的一维数组 举例 char a[3][4]; /* 3行4列 */ 二维数组的存储形式 按行存放,先行后列 char a[3][4]; 6.2.1 二维数组的定义 [例6.3] 给一个2*3的二维数组各元素赋值,并输出全部元素的值。 #define Row 2 #define Col 3 #include stdio.h main() { int i, j, array[Row][Col]; for(i=0; iRow; i++) /*外循环:控制二维数组的行*/ for(j=0; jCol; j++) /*内循环:控制2维数组的列*/ {printf(please input array[%2d][%2d]:,i,j); scanf(%d,array[i][j]); /*从键盘输入a[i][j]的值*/ } printf(\n); /*输出2维数组array*/ for(i=0;iRow;i++) { for(j=0;jCol;j++) printf(%8d,array[i][j]); printf(\n); } } 二维数组的定义方式如下: 数据类型 数组名[行常量表达式][列常量表达式] ; 1.数组元素在内存中的排列顺序为“按行存放”,即先顺序存放第一行的元素,再存放第二行,以此类推。 2. 设有一个m*n的数组x,则第i行第j列的元素x[i][j]在数组中的位置为:i*n+j(注意:行号、列号均从0开始计数)。 3.可以把二
您可能关注的文档
- Chapter15 第3节 推进系统的传递设备.ppt
- chapter10-3 牵引变电所负序电流.ppt
- chapter2-5励磁系统稳定器.ppt
- chapter1(电路的基本概念与基本定律).ppt
- chapter1电路的基本概念和基本定律.ppt
- chapter21触发器和时序逻辑电路(电工电子技术).ppt
- Chapter 9 常见HPLC问题的故障排除_1.ppt
- chapter1提高采收率原理.ppt
- chapter4 环路噪声性能 电子科技大学(经典).ppt
- chapter22 触发器和时序逻辑电路.ppt
- 部编版(25秋)小学语文三年级上册11 宝葫芦的秘密(节选)【优质课件】.pptx
- 部编版(25秋)小学语文三年级上册16 富饶的西沙群岛【精华课件】.pptx
- 部编版(25秋)小学语文三年级上册16 富饶的西沙群岛【优质课件】.pptx
- 部编版(25秋)小学语文三年级上册19 香港,璀璨的明珠【新课标课件】.pptx
- 部编版(25秋)小学语文三年级上册快乐读书吧:在那奇妙的王国里【新课标课件】.pptx
- 部编版(25秋)小学语文三年级上册12 在牛肚子里旅行【优质课件】.pptx
- 【初中英语】知识点思维导图.docx
- 购房合同预售合同模板(3篇).docx
- 解除租赁合同模板厂房(3篇).docx
- 解约合同模板(3篇).docx
原创力文档


文档评论(0)