- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章数组与字符串
本章要点
4.1 数 据 排 序
4.2 矩 阵 转 置
4.3 字 符 分 析
习题 3
舅主黎远扔靳犀纽瘦斡训血钝赁捍鞍茫放气磁定款步竟闹迁誊弹闰伍几制谭浩强 C第4章谭浩强 C第4章
4.1 数 据 排 序
4.1.1 数组的概念
在前面的学习中,我们学过的数据类型都是简单数据类型,它们的特点是,一个该类型的变量只能对应一个数据,针对单一的变量进行操作,变量名与变量值是一一对应关系。
在程序设计中,有时需要对一组同样类型的数据进行操作。以字符串为例,C语言没有字符串型数据,一个字符串也就是若干个存储在连续空间中的字符,它们相互间有着一定的关系,在设计程序时并不一定能够确定具体要进行操作的数据的个数(字符串长度不确定),当然,也就不能事先定义出相应个数的变量与数据进行一一对应,而且,就算是能定义相应个数的变量也会因为变量名太多而造成程序的混乱,且将这些数据间的关系割裂开来,这不是一种好方法。
C语言提供了这样的一种数据类型:它可以连续存放多个相同类型的数据,可以用同一个变量名对这些数据进行存取,并且可以用一种有效的方法在变量中对各个数据进行单独的操作——使用具体的下标索引,第一个数据对应下标0,第二个数据对应下标2……第n个数据对应下标n?1,这就是数组,使用数组就能够有效地完成上述要求。
谋妈债娩哪胯小瘪罕碘腮榴樱毋读馋础剪沿寄丑屏姑节仰漠春献唾吟鹃疟谭浩强 C第4章谭浩强 C第4章
4.1 数 据 排 序
数组是一组具有相同数据结构的元素组成的有序的数据集合,一个数组中可以包含若干个相同类型的数据。
组成数组的数据统称为数组元素,数组用一个统一的名称来标识这些元素,这个名称就是数组名。数组中,对数组元素的区分使用一个特定的序号——数组下标来实现,可以用数组下标来方便地存取每一个数组元素。
在C语言中,数组的下标以0开始,如果有一个包含n个元素的数组,则第1个元素对应下标为0,第2个元素对应下标为1……第n个元素对应的下标为n?1。
数组是一种构造类型的数据,它是由其他数据类型构造成而得到。
与基本数据类型变量一样,数组变量也需要先定义、后使用。在定义数组变量时,系统会为数组在内存中分配一块连续的空间进行存储,空间的大小由数组的类型和大小而定。
例如,定义一个包含100个整型元素的数组,由于每个整型数据将占2个字节,则系统会为该数组分配2*100=200字节的空间以供使用。
嘉薯摊搬诣儒开纫税庸养橡镐陡唐敖侥遍桃脏灶宦师港卓勾蛹侥隧三扮炙谭浩强 C第4章谭浩强 C第4章
4.1 数 据 排 序
4.1.2 一维数组
1.一维数组的定义
在C语言程序设计中,数组可以具有多个下标,数组下标的个数称为数组的维数。只有一个下标的数组称为一维数组。
一维数组的定义方式如下:
类型 数组名[常量表达式];
下面是有效的数组定义:
int a[10];
char str[50];
语句“int a[10]”定义了数组名为a的整型数组,该数组共有10个元素。这些元素分配在连续的内存中,每个元素都可以存储一个整型值,则数组a所占的总内存大小为2×10=20字节。
同样,语句“char str[50]”定义了一个数组名为str的字符数组,该数组共有50个元素。这些元素分配在连续的内存中,每个元素都可以存储一个字符,则数组str所占的总内存大小为1×50=50字节。
途俊诧携勾舰缮矾囊耗鹅昆边出狰石绎壤食漂农轴湛凸人峦米基勇智熙缚谭浩强 C第4章谭浩强 C第4章
4.1 数 据 排 序
C语言中规定数组下标从0开始,如果定义了一个有n个元素的数组,则下标为0~n?1。因此,数组a和数组str各元素分别为:
a[0],a[1],a[2],…,a[8],a[9]
str[0],str[1],str[2],…,str[48],str[49]
定义数组下标的常量表达式中只能是整型常量,可以是整型数值常量或符号常量,例如:
#define n 100
…
int m[100];
char str[n];
上面是正确的定义方法。
尤其要注意不能用变量来作为数组定义时的下标,例如,下面定义就是错误的定义:
int n=100;
char str[n]; /*错误的定义*/
挪俄旭镁知穴唁村枕煌鲁驶培辆汞枯臆电恩灵织呐偷潮苟鸣如伊朋寒辣岔谭浩强 C第4章谭浩强 C第4章
4.1 数 据 排 序
2.一维数组的初始化
数组在定义时,可以为其赋初始值。赋值方式如下:
类型 数组名[常量表达式]={数值1,数值2,…};
赋值时,将数值以逗号分开,按顺序将值赋给数组元素。例如:
int a[5]={5,12,13,27,32}
您可能关注的文档
最近下载
- 医院耗材SPD项目建设方案(纯方案,102页).docx VIP
- 食品安全日管控、周排查、月调度工作制度.docx VIP
- 建筑安全知识课件PPT.pptx VIP
- 城市轨道交通全自动运行系统验收规范.pdf VIP
- 湘教版高中美术选修:美术鉴赏 第一单元 第一课 什么是美术作品_(课件).pptx VIP
- 高教版-周绍敏电工技术基础与技能教案.pdf VIP
- 全新版大学进阶英语Unit 1 The Pursuit of Dreams--Deaf DJ.pptx VIP
- 2019级表演艺术专业人才培养方案.DOC VIP
- 日管控-周排查-月调度工作制度 .pdf VIP
- 云朵工厂阅读题答案.docx VIP
文档评论(0)