- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 数 组 7.1 一维数组的定义和引用 eg7.3 起泡法排序(由小到大) 六、字符串处理函数(string.h“) p135 * 数组的概念与定义 一维数组的应用 二维数组的应用 字符数组的应用 基本类型数据(整型、字符型、浮点型) 构造类型数据(数组类型、结构体类型、共用体类型) 构造类型数据由基本型数据按一定的规则组成的,又称为“导出类型”。 数组是有序数据的集合。 数组中的每一个元素都属于同一个数据类型。 一、一维数组的定义 类型说明符 数组名[整型常量表达式]; 例:int a[10]; float b[3]; a[0] a[2] a[4] a[6] a[8] a[1] a[3] a[5] a[7] a[9] ① 数组名的定名规则和变量名相同, ② 数组名后的常量表达式用[ ]括起来。 ③ 常量表达式表示元素的个数,即数组长度。 例: a[10]表示数组a中包括10个元素,分别为 a[0]~a[9] ④ 常量表达式中可以包括常量和符号常量,不能包 含变量,即定义时必须确定数组的大小。 int n; scanf(%d,n); int a[n]; 连续存放 例 int a[6]; a[0] a[1] a[2] a[3] a[4] a[5] a 编译时分配连续内存 内存字节数=数组长度* sizeof(元素数据类型) 数组名表示内存首地址, 是地址常量 二、一维数组元素的引用 数组必须先定义,后使用。C语言规定只能逐个引用数组元素而不能一次引用整个数组。数组元素表示形式: 数组名[下标] void main( ) {int i,a[10]; for (i=0;i=9;i++) a[i]=i; for (i=0;i=9;i++) printf(%4d,a[i] ); } 整型常量或整型表达式 a[9-i]); 通过赋值语句给 数组元素赋值 #includestdio.h void main( ) {int i,a[10]; for (i=0;i=9;i++) scanf(%d,a[i]); for (i=0;i=9;i++) printf(%4d,a[i] ); } 三、一维数组的初始化 可以用赋值语句或输入语句使数组中的元素得到值,同时也可以使数组在程序运行之前初始化,即在编译期间使之得到初值。 通过输入语句给 数组元素赋值 ⒈ 在定义数组时,对数组元素赋以初值。 如: int a[10]={0,1,2,3,4,5,6,7,8,9}; ⒉ 可以只给一部分元素赋值。 如: int a[10]={0,1,2,3,4}; 表示只给前5个元素赋初值,后5个元素自动赋以0值。 3. 在对全部数组元素赋初值时,可以不指定数组长度. int a[5]={1,2,3,4,5}; int a[ ]={1,2,3,4,5}; int a[10]={0*10}; int a[10]={0}; eg7.2用数组来处理Fibonacci(斐波纳契)数列问题(eg6.7兔子) f[0] f[1] f[2] f[3] f[4] f[5] f[6] f[7] f[8] f[9] ............. 1 1 0 0 0 0 0 0 0 0 ......... 2 3 5 8 13 21 34 55 void main( ) { int i; int f[40]={1,1}; for(i=2;i40;i++) f[i]=f[i-2]+f[i-1]; for(i=0;i40;i++) { if(i%5= =0) printf(\n); printf(%12d,f[i]); } } 9 8 5
文档评论(0)