一维数组,二维数组.pptVIP

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数组 一维、二维数组;课前预习 将手机调到静音 认真做笔记 及时完成作业;了解数组的概念 掌握定义和引用一维数组的方法 掌握定义和引用二维数组的方法;数组 定义和引用一维数组 定义和引用一维数组;6.1 数组的概念;30名学生成绩,需要用30个变量 100名学生成绩,需要用多少个变量? 用s1,s2,s3,……,s30表示成绩,能否体现内在联系? C语言用方括号中的数字表示下标,如用s[15]表示,s为数组名,15为数组中元素的个数。;数组是一组有序数据的集合。数组中各数据的排列是有一定规律的,下标??表数据在数组中的序号,如s[5]。 用一个数组名和下标唯一确定数组中的元素。 数组中的每一个元素都属于同一个数据类型。 用循环对数组中的元素进行操作,可以有效地处理大批量的数据,大大提高效率。;6.2.1 定义一维数组 6.2.2 引用一维数组的元素 6.2.3 一维数组的初始化 6.2.4 一维数组程序举例;6.2.1 定义一维数组;6.2.1 定义一维数组;6.2.1 定义一维数组;常量表达式中可以包括常量和符号常量,不能包含变量,即数组的大小不依赖于程序运行过程中变量的值。 int n; scanf(“%d”,n); int a[n]; ;6.2.2 引用一维数组的元素;6.2.2 引用一维数组的元素;注意定义数组与引用数组元素的区别: 形式上:int a[10];定义数组长度为10; t=a[6];引用a数组中序号为6的元素; 简单的判别方法:如果在数组名[常量]前有类型名(char,int,float,double等),则为定义数组。如果没有类型名,则为引用数组元素。 ;例6.1 引用数组元素。利用循环给数组元素a[0]~a[9]赋值为0~9,然后按逆序输出各元素的值。 解题思路: 先用循环给数组元素a[0] ~a[9]赋值0~9,这样,每个数组元素都有固定的值了,然后按a[9]到a[0]的顺序输出各元素的值。;#include stdio.h void main() { int i,a[10]; for(i=0;i=9;i++) a[i]=i; for(i=9;i=0; i--) printf(%d ,a[i]); printf(\n); } ;6.2.3 一维数组的初始化;(2) 可以只给一部分元素赋值,未被赋值的根据数组类型自动赋值。 int a[10]={0,1,2,3,4}; int a[10]={0,1,2,3,4,0,0,0,0,0}; ;(3)在对全部数组元素赋初值时,如果数据个数确定,则可以在定义数组时不指定数组长度,系统根据数据的数量确定数组的长度。 int a[5]={1,2,3,4,5}; 可写为 int a[ ]={1,2,3,4,5}; 注意:如果数组的长度与定义初值的个数不相同,则数组长度不能省略。 如果数组a的长度为10,使用int a[ ]={1,2,3,4,5};数组只赋了5个初值,系统认为数组长度为5。 应该写为a[10] ]={1,2,3,4,5}; ;6.2.4 一维数组程序举例;解题思路: 建立一个数组,将数列中第1个数放在数组第1个元素中,数列第2个数放在数组第2个元素中,… 数组序号为i的元素的值是其前两个元素值之和。即: f[i]= f[i-2]+f[i-1] 用循环来求出数组各元素之和;#include stdio.h void main() { int i; int f[20]={1,1}; //f[0]和f[1]的值1,1 for(i=2;i20;i++) f[i]=f[i-2]+f[i-1]; //求f[2]和f[19]的值 for(i=0;i20;i++) { if(i%5==0) printf(\n); //每行输出5个 printf(%12d,f[i]); } printf(\n); };例5.8程序在顺序求出并输出各个数后,不能保存这些数据,如果要单独输出第10个数,是比较困难的。 本例用数组处理时,把每个数据都保存在各数组元素中,如果要单独输出第10个数,是很容易的,直接输出f[9]即可。; 例6.3 假如有n个人,各人年龄不同,希望按年龄将他们从小到大排列。 解题思路: 排序的规律有两种:一种是“升序”,从小到大;另一种是“降序”,从大到小 把题目抽象为:“对n个数按升序排序” 采用起泡法排序:先将第1个数和第2个数比较,如果第2个数比第1个数

您可能关注的文档

文档评论(0)

zsmfjy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档