- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 数 组;用一组具有相同名字、不同下标的下标变量来代表一组具有相同性质的一组数据,这就是数组。
数组是同类型数据的集合,集合中的每个数据称为数组元素或下标变量,数组元素的类型相同、个数确定。
下标变量中如果只用一个下标,则称为一维数组,用两个下标则称之为二维数组,用三个下标称之为三维数组,依此类推。 ;7.1一 维 数 组;数组在内存中占据一片连续的存储单元,数组中的每个数组元素在这片连续的存储单元中按序存储。C语言规定数组名表示该连续存储单元的首地址(首字节编号)。;数组初始化的一般形式为:
[存储类别] 类型标识符 数组名[常表]={初值表};
数组初始化常见的几种形式:
对所有数组元素赋初值,此时数组定义中表示数组长度的常量表达式可以省略。
例如,int a[6]={0,1,2,3,4,5};
例如,int a[]={5,6,7,8};
可以只给一部分数组元素赋初值,此时数组长度一般不省略。例如:
int a[6]={0,1,2};
后面3个元素由C编译系统自动赋值为0。;引用形式为:
数组名[下标表达式]
例如:
a[0]=123;
scanf(“%d”,a[3]);
printf(“%d”,a[5]);
a[i++]=2*a[i+j];;【例7.1】输入10个整型数据,然后分别按顺序和逆序的方式输出。;在引用数组元素时应注意:
① 引用数组元素时,下标表达式的值是确定的。
② 数组元素本身可以看作是一个普通变量,代表内存中的一个存储单元。因此数组元素可以在任何相同类型简单变量允许使用的位置引用。
③ 数组引用时,下标值应该在已定义的数组大小范围内。常出现的错误是:
int a[100];
a[100]=4;
应严格区分定义数组时使用的a[100]和引用数组元素时使用的a[100] ;7.1.4 一维数组应用;【例7.3】 用数组处理Fibonacci数列问题,输出Fibonacci数列的前36项数据。 ;#include stdio.h
#define N 10
main( )
{ int num[N]={1,32,14,56,74,3,56,6,9,12}, x, i;
printf(input x:);
scanf(%d, x);
for(i=0; iN; i++)
if (num[i]==x) break;
if(i==N)
printf(该数在数组中不存在\n);
else
printf(该数在数组中的下标是%d\n,i);
};【例7.5】 编写程序,利用选择法对10个整数进行递减排序,并输出排序后的结果。 ;第四趟 3 4;7.2 二 维 数 组;定义二维数组的一般形式为:
[存储类别] 类型标识符 数组名[常表1][常表2],…;
例如:int a[2][3];
说明:
① 二维数组定义中的第1个下标表示该数组具有的行数,第2个下标表示该数组具有的列数,两个下标之积是组成该数组的元素的个数,即二维数组的长度。
② 二维数组在内存中占据一片连续的存储单元。;③ 在C语言中,一个二维数组可以看作是一个特殊的一维数组,其中一维数组中的每个元素又是一个一维数组,即二维数组是由元素类型为数组类型的一维数组构成的一维数组。
因此C系统就把a[0]、a[1]看作是一维数组的数组名。 ;二维数组初始化的几种常见形式:
(1) 按行给二维数组元素赋初值。如:
int a[2][3]={{1,2,3}, {6,7,8}};
(2) 将所有数据写在一个花括弧内,按数组在内存中的排列顺序对各数组元素赋初值。如:
int a[2][3]={1,2,3,6,7,8};
(3) 给二维数组所有元素赋初值,二维数组第一维的长度可以省略。
如:int a[2][3]={1,2,3,6,7,8};
等价于:
int a[ ][3]={1,2,3,6,7,8};
(4)在定义时也可以只对部分元素赋初值而省略第一维的长度,但应按行赋初值。如:
int a[ ][3]={{0,2},{6}};;二维数组元素的引用形式为:
数组名[下标表达式1][下标表达式2]
数组元素的行列下标都从0开始。
可以对二维数组元素进
您可能关注的文档
- 机械32微机--微处理器答题.ppt
- 第6章网店推广2014课题.ppt
- 机械1206郭一显答题.ppt
- 第6章-稳恒磁场-1课题.ppt
- 机械CADCAM技术第8章答题.ppt
- 机械毕业设计题目答题.doc
- 机械常用语英文答题.doc
- 机械创新3-辉煌金塔答题.ppt
- 第6章细菌毒素和真菌毒素课题.ppt
- 机械创新答题.doc
- 2023年河北省保定市高碑店市卫生健康局公务员考试《行政职业能力测验》历年真题及详解.docx
- 2023年河北省保定市安国市信访局公务员考试《行政职业能力测验》历年真题及详解.docx
- 信息必刷卷03(广东省专用)(解析版).docx
- 信息必刷卷02(天津专用)(原卷版).docx
- 信息必刷卷03(安徽专用)(原卷版).docx
- 热点08 工艺流程题 -2024年中考化学【热点·重点·难点】专练(江苏专用)(解析版).docx
- 专题06 比较异同类选择题(含答题技巧,题型专练60题)(解析版).docx
- 专题09 推断题、工业流程题、溶解度曲线题(解析版).docx
- 信息必刷卷04(湖南专用)(解析版).docx
- 信息必刷卷01(福建专用)(原卷版).docx
最近下载
- (完整版)数学英文词汇大全.docx VIP
- 完整版本圣三国蜀汉传攻略.docx
- 第4课用联系的观点看问题2024-2025学年中职高教版2023哲学与人生.pptx VIP
- 高中化学_电化学复习专题教学设计学情分析教材分析课后反思 .pdf
- 广告标识牌采购投标方案(技术标360页).docx
- 测绘地理信息安全保障措施通用标准审查细则(试行).doc VIP
- 语文课程实践技能智慧树知到期末考试答案章节答案2024年广州大学.docx
- 现代汉语词性辨析练习及答案.doc
- 广东省安装工程综合定额2010.pdf VIP
- 外研社高中英语必修一 Unit 5 The monarch’s journey 教学设计.docx
文档评论(0)