C++课件第四章数组的应用.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 数组的应用 教学目标: 理解数组的概念,掌握一维数组和二维数组的定义、初始化和使用方法; 掌握数值型数组的应用,包括实现起泡法排序、选择法排序和折半查找等功能的程序设计方法。 §4.1 数值型数组应用 如果有100个互不关联的数据,可以分别把他们存放到100个变量中; 但如果这些数据是有内在内在联系的,是具有相同属性的呢? 这些例子都是将数据组合在一个特定的类别中(姓名、学号、成绩),所有这些都可以用数组来表示。 4.1 数组的概念 [例4.1] 分析: 对于学生的信息用数组表示。 用一维数组num表示学生的学号;用一维数组元素num[i]表示第i个学生的学号。 用一维数组s表示学生的某门课程的考试成绩;用一维数组元素s[i]表示第i个学生某门课程的考试成绩。 源程序清单: #includeiostream using namespace std; void main( ) { int i,n; float num[50],s[50],sum=0.0,ave; cinn; for(i=0;in;i++) cinnum[i]s[i]; for(i=0;in;i++) sum=sum+s[i]; ave=sum/n; for(i=0;in;i++) if(s[i]ave)coutnum[i]s[i]endl; } 1. 数组的定义 数组的定义格式如下: 类型 数组名[下标表达式1][下标表达式2]…… 其中: 数组名为一标识符 下标表达式为常量表达式(只能是整型数值或符号常量),不能是变量表达式。 有一个下标表达式,则该数组叫做一维数组; 有两个下标表达式,则该数组叫做两维数组; 有N个下标表达式,则该数组叫做N维数组。 数组数据类型的选择? 数组通常用于表示解决问题中同类型的一组数据。 如果同类型的一组数据是数值型的,那么,我们用数值型数组去表示。 如果同类型的一组数据是字符型的或是字符串型的,那么,我们用字符型数组去表示。 数组维数的选择? 在数组表示同类型的一组数值型数据时,应掌握: 同类型的一组数据是线性关系的,那么,用一维数组去表示; 同类型的一组数据是行列关系的,那么,用二维数组去表示。 一维数组的声明与引用 一维数组的声明 类型说明符 数组名[ 常量表达式 ]; 例如:int a[10]; 表示 a 为整型数组,有10个元素:a[0]...a[9] 引用 必须先声明,后使用。 数组不能以整体的形式参加数据处理,参加 数据处理只能是数组元素 例如:a[0]=a[5]+a[7]-a[2*3] 1.一维数组的定义(续) 注意点: 2、一维数组的存储顺序 3.一维数组的初始化 在声明数组的同时可以对数组元素赋以初始值 例如:int a[5]={0,1,2,3,4}; 可以只给一部分元素赋初值(至少一个),当没有为数组中每个元素提供初始值时,C++将未初始化的元素赋值为默认值。 例如:int a[5]={0,1,2}; (a[3]=0,a[4]=0) 如果没有赋任何一个初值, C++不能自动初始化元素,数组元素将包含垃圾数据。 在对全部数组元素赋初值时,可以不指定数组长度. 例如:int a[ ]={1,2,3,4,5} (数组长度为5) 静态一维数组 声明静态一维数组时,在前面加上关键字static 例如:static int a[5]; 若未对静态数组进行初始化,则数组的所有元素将自动获取初始值0。 如上例中定义的数组a的5个元素均为0。 静态数组的初始化是在编译时完成的,以后执行该函数时将不再重新赋值,而是直接使用原有值。 4、数组必须先定义后使用 #include iostream.h void main(void) {  int a[5],sum; //定义数组a和变量sum  a[0] = 3;  a[1] = 1;  a[2] = 7;  a[3] = 4;  a[4] = 8;  sum = a[0] + a[1] + a[2] + a[3] + a[4];  coutsum = sumendl; } 虽然数组定义和数组元素的引用形式类似,但它们含义不同:   int a[5];   是定义有5个元素的数组a。 而表达式:   a[4]   表示数组中下标为4的元素。 4.一维数组的使用 ①使用数组中某一个元素的格式: 数组名[下标表达式] 4.一维数组的使用(续) ②越界问题 若一个数组含有n个元素,访问元素时,必须保证下标表达式的值是从0到n-1之间的整数。如果表达式的值超出该范围,这种现象称为越界。 4.一维数组的使用(续) ③两个数组的相互赋值

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档