- 1、本文档共44页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
二维数组的声明具有多个下标的数组称为多维数组,其中最常用的是二维数组,主要用来表示数值表格。二维数组的声明格式如下:声明二维数组时应注意:(1)与一维声明基本相同,只多了一个常量表达式,表示二维。第一个常量表达式为行下标,声明了这个数组的行数,第二个常量表达式为列下标,声明了每行的列数。因此,元素个数=行数*列数。如上面二维数组a由3×4=12个元素组成。数据类型数组名[常量表达式][常量表达式];二维数组的声明(2)C语言把二维数组看成是一维数组,基元素又是一个一维数组。例如,a有三个元素a[0],a[1]和a[2],它们各自又可以看作为一个包含5个元素的一维数组(3)二维数组的元素在内存中按线性方式存放,即按行存放,先存放第一行的元素,再存放第二行的元素。数组a的存放顺序为:a[0][0]→a[0][1]→a[0][2]→a[0][3]→a[1][0]→a[1][1]→a[1][2]……→a[2][3]二维数组的引用二维数组的引用格式如下:引用二维数组元素时,对数组下标的值要求与引用一维数组相同,即行或列下标表达式的值只能从0到数组所规定的下标上界之间的整数。数组名[下标]二维数组的初始化在声明二维数组同时,可以用下列方法给数组元素初始化:(1)按存放顺序,举例如下:二维数组的初始化(2)按行分段初始化,举例如下:结果与第一种方法相同,但更为直观。有几组用逗号分隔的大括号,就代表二维数组有几行,而每组大括号有几个用逗号分隔的数值,就代表该行有几列。最后将所有的初始化内容用一对大括号括起来。这种方法特别适用于对数组部分元素赋初值,系统自动将没有赋值的元素赋值成0,举例如下:二维数组的初始化(3)声明同时对数组元素全部赋值,可省略第一维的长度,但必须指定其他维的长度,如下所示:根据初值的个数,编译系统会自动确定第一维的下标,如下所示:编译系统会根据初值数据的行数自动确定第一维下标的长度inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12};inta[][4]={{1},{},{9,10}};/*数组a中各元素如图3-13(c)所示。*/字符数组与字符串的关系用字符数组表示字符串时需注意:(1)\0代表字符串结束,处理字符数组时,一旦遇到该字符,剩下的字符就不再处理。(2)在进行字符串处理时,\0不作为字符串的有效字符进行处理,它只起到判别作用。(3)\0在字符数组中,仍占用一个单元,如字符串program的长度为7,但它却占用了字符数组8个的单元的大小。因此,大小为n的字符数组最多只能存放长度为n-1的字符串,需要预留出字符串结束符\0的位置。字符数组的声明字符数组的声明与前面介绍的类似。例如charc[10];/*一维字符数组,每个元素占用1个字节内存单元*/charc[3][4];/*二维字符数组,每个元素占用1个字节内存单元*/字符数组初始化字符数组可以使用这两种方法来进行初始化。使用字符常量初始化数组,举例如下(2)使用字符串常量(字符串)初始化数组,举例如下:charc[10]={C,,L,a,n,g,u,a,g,e};/*声明同时对各个元素赋初值*/charc[]={CLanguage};/*此时数组c长度为11*/charc[]=CLanguage;/*大括号也可以省略*/输入输出字符串在C语言中,有两个函数可以在控制台(显示器)上输出字符串,它们分别是:puts():输出字符串并自动换行,该函数只能输出字符串。printf():通过格式控制符%s输出字符串,不能自动换行。除了字符串,printf()还能输出其他类型的数据。同样在C语言中,有两个函数可以让用户从键盘上输入字符串,它们分别是:scanf():通过格式控制符%s输入字符串。除了字符串,scanf()还能输入其他类型的数据。gets():直接输入字符串,并且只能输入字符串。输入输出字符串使用格式符“%c”,以单个字符形式输入输出①在用键盘输入字符串时,通常以回车符或空格符结束一个字符串的输入。如本例,当输入“abcdabcdabcd”时,实际存入字符数组c中的字符只有“abcd”,这一点请注意。②在未知字符串长度情况下,声明字符数组长度时应尽量长些,但这势必会造成资源浪费。我们可以用字符串初始化
文档评论(0)