- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6第六章数组
第六章 数组 有多项式: anxn+an-1xn-1+……+a2x2+a1x+a0 其中an,an-1,……,a2,a1,a0称为系数 n,n-1, ……,2,1,0称为下标。 第一节 一维数组 一、一维数组的定义 定义形式: 类型名 数组名 [常量表达式]; 例:int a[5]; 说明: 1.数组名:a 是常量,表示数组的首地址 2.数组长度:5 3.数组元素:a[0],a[1],a[2],a[3],a[4] 4.数组下标:从0开始,0,1,2,3,4 5.存储形式: 二、一维数组的初始化 1.在定义语句中把各个元素的初值依次存放在赋值号后面的一对花括号中,以“,”间隔 如:int a[5]={10,20,30,40,50}; 2。所赋初值个数可以少于数组元素个数 如:int a[5]={1,2}; 赋值结果:a[0]=1,a[1]=2,a[2]=0,a[3]=0,a[4]=0 3.省略数组长度的情况 int a[ ]={ 10,20,30,40,50}; 说明:数组长度由初值个数确定 注意:(错误情况) (1)初值个数不能大于数组元素个数 如:int a[5]={1,2,3,4,5,6}; (2)所赋初值的类型必须与数组元素类型一致 如: int b[5]={‘a’,’b’}; (3)无初值时,不能省略数组长度 如: int c[ ]; 三、一维数组的引用 形式:数组名[下标表达式] 例:int a[5]={10,20,30,40,50}; 其中数组元素及值为 a[0]=10,a[1]=20,a[2]=30,a[3]=40,a[4]=50 说明: 1.数组元素的使用和普通变量一样 如: a[0]=5; a[0]++; a[1]=a[0]+14; printf(“%d”,a[4]); (2)引用数组时,下标不能出界 例: int a[10]; 数组下标应在0-9范围内,一般情况下,数组下标在0至数组长度-1范围内 a[10]=1是错的; (3)数组不能整体引用 int b[5],a[5]={1,2,3,4,5}; b=a; 例:以下程序运行后的输出结果是 . main() { int i,n[ ]={0,0,0,0,0}; for(i=1;i=4;i++) { n[i]=n[i-1]*2+1; printf(“%d”,n[i]); } } 例:有以下程序,计算数组中所有元素的平均值,试完成程序. main() { int i; float sum,aver,b[10]={4,2,8,3,1,10,5,6,12,7}; sum=0; for(i=0;i10;i++) sum+=b[i]; aver=sum/10; printf(“sum=%f aver=%f”,sum,aver); } 例:已知10名同学的学习成绩,请编写程序统计及格人数. main() { int i,cnt,b[10]={58,99,60,42,75,64,86,92,100,71}; cnt=0; for(i=0;i10;i++) if(b[i]=60) cnt++; printf(“cnt=%d”,cnt); } 例:请编写一个程序,通过键盘输出10个数,并输出这些数中的最大值 和最小值 main( ) { int i,max,min,a[10]; /*输入10个数到数组中*/ for(i=0;i10;i++) scanf(“%d”,a[i]); max=a[0]; min=a[0]; /*计算最大值和最小值*/ for(i=1;i10;i++) { if(maxa[i]) max=a[i]; if(mina[i]) min=a[i]; } printf(“max=%d min=%d”.max,min); } 第二节 二维数组 一.二维数组定义 形式: 类型名 数组名[常量表达式1][常量表达式2] 如: int a[2][3]; 二维数组的意义:可理解为一个由行和列构成的矩阵 说明: 对于数组a[2][3] 1.数组名为a 2.其中2是第一维的长度,表示行数;3表示第二维的长度,表示列数 3.行下标,列下标都从0开始 4.数组中元素个数是行数乘以列数的值 5.数组在内存中一般是按行的顺序连续存储的. 如: 二.二维数组的初始化 1.在定义时赋初值 如: int a[2][3]={{10,20,30},{40,50,60}}; 赋值结果是:a[0][0]=10,a[0][1]=20,a[0][2]=3
文档评论(0)