- 1、本文档共100页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C课件ch04课案
第 4 章 数组 本章学习重点 一维数组、二维数组、字符数组的定义、引用及初始化 常用算法:冒泡排序、选择排序、顺序查找、折半查找、最大最小值、欧几里德算法等 用字符数组处理字符串 使用字符串处理函数处理字符串 问题: 中秋佳节,有贵客来到草原,主人要从羊群中选一只肥羊宴请宾客,当然要选最重者。这样就要记录每只羊的重量,如果有成千上万只羊,不可能用一般变量来记录(sheep0,….sheep12304?)。 给一个班50个学生一门课的成绩排序,这组成绩该如何存放呢? 带有下标的变量,也就是这里要讲的数组。 什么是数组? 在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。 在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。 因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。 4.1 一维数组 一维数组的定义方式一维数组元素的引用 一维数组的存储形式一维数组的初始化一维数组程序举例 数组名 [下标1] 下标越界是大忌! 编译程序不检查是否越界 下标越界,将访问数组以外的空间 那里的数据是未知的,不受我们掌控,可能带来严重后果 4.1 一维数组 4.1.1 一维数组定义 【存储类型】 数据类型 数组名[常量表达式] 4.1.3 一维数组元素的引用 数组定义之后,就可以在程序中引用元素。 引用格式为:数组名[下标表达式] 说明:下标表达式是整型常量或整型变量表达式。 例如定义: int b,c,a[5]; 数组a可引用的元素有:a[0],a[1],a[2],a[3],a[4]。 给元素赋值方法: a[0]=0; a[1]=1;a[2]=2;a[3]=3 ; a[4]=4 ; for(i=0;i5;i++) scanf(“%d”,a[i]); 给变量b、c 赋值:b=a[0]+a[2]–a[4]; c=a[0+3]+a[1*2]; 其他合法引用:a[1*3],a[8%4],a[8/4],a[2] 4.1.2 一维数组的存储形式 怎么让两个数组相等? main() { int i,a[4],b[4]; for(i=0;i=3;i++) a[i]=i; b=a; for(i=3;i=0;i--) { printf(“%d ”,b[i]); } } 【例4.1】读入一维数组,并按相反顺序输出各元素。 算法分析: (1)设数组a含有10个元素,下标为0~9。 (2)以下标作为循环控制变量for(i=0;i=9;i++) 在循环体内进行数组元素a[i]的引用 #include iostream using namespace std; #include iomanip void main() { int i,a[10]; for(i=0;i=9;i++) cina[i]; for(i=9;i=0;i--) coutsetw(6)a[i]; } 4.1.4 一维数组的初始化 数组初始化就是在定义数组的同时得到数组元素的值 数据类型 数组名[常量表达式]={数据1,数据2,…,数据n}; 说明: (1)花括号中的值是元素的初始值,用逗号分隔开。 int a[10]={0,1,2,3,4,5,6,7,8,9}; (2) 数组若在定义时没有赋初值 对于存储在固定存储区(静态存储区)的数值型数组各元素自动赋0,字符串数组的各元素自动赋值空字符。 static int a[5]; //各元素的值是0 static char c[10]; //数组c 各元素为空字符 存储在动态存储区的数组各元素的值不确定。 auto int a[5]; //各元素的值不定 auto char c[10]; 各元素没有初始化,使用前一定要赋值 (3) 可以只给一部分元素赋初值,其余元素自动默认为0。 int a[10]={0,1,2,3,4}; (4) 对全部数组元素赋初值时,可不指定数组的长度。 int a[5]={0,1,2,3,4}; 相当于: int a[ ]={0,1,2,3,4}; 4.1.5 一维数组程序设计举例 【例4.2】求10个数中最大元素及其所在的位置。 算法分析: 要记住最大元素位置(下标),最大是哪个元素? (
您可能关注的文档
- c++4自定义数据类型信息学竞赛、C++编程初学者.ppt
- c++11流类库与输入输出.ppt
- BW数据仓库模型创建注意事项.docx
- C++上机实验报告实验三.docx
- C++二叉树结构的建立与基本操作.doc
- c++作业题.doc
- c++_栈和队列.ppt
- b、施工组织设计(中泰)三联.doc
- C++复习.doc
- C++复习题+答案.docx
- 绿色轨道,环保出行-城市轨道交通环保的全面研究.pptx
- 初中物理课堂中学生物理思维培养策略探究教学研究课题报告.docx
- 初中地理实践教学中学生地理图谱绘制能力的培养研究教学研究课题报告.docx
- 数学学习策略对学生成绩的影响教学研究课题报告.docx
- 中学物理教材中实验内容的有效性分析教学研究课题报告.docx
- 水是生命之源(综合实践课程课件)-(2).ppt
- 2024中考语文文言文梳理七下第9篇卖油翁课堂讲本课件.pptx
- 初中语文课堂教学资源配置优化策略分析教学研究课题报告.docx
- 初中地理课堂中的地图技能教学策略研究与实践教学研究课题报告.docx
- 纺前工艺:双赢提升-优化流程 提升品质.pptx
文档评论(0)