谭浩强C程序设计课件第5章.ppt

谭浩强C程序设计课件第5章.ppt

ID:58868412

大小:282.50 KB

页数:84页

时间:2020-09-30

谭浩强C程序设计课件第5章.ppt_第1页
谭浩强C程序设计课件第5章.ppt_第2页
谭浩强C程序设计课件第5章.ppt_第3页
谭浩强C程序设计课件第5章.ppt_第4页
谭浩强C程序设计课件第5章.ppt_第5页
资源描述:

《谭浩强C程序设计课件第5章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章数组5.1数组的概念5.2一维数组的定义和引用5.3二维数组的定义和引用5.4用数组名作函数参数5.5字符数组*5.6C++处理字符串的方法——字符串类与字符串变量概括地说:数组是有序数据的集合。要寻找一个数组中的某一个元素必须给出两个要素,即数组名和下标。数组名和下标惟一地标识一个数组中的一个元素。数组是有类型属性的。同一数组中的每一个元素都必须属于同一数据类型。一个数组在内存中占一片连续的存储单元。如果有一个整型数组a,假设数组的起始地址为2000,则该数组在内存中的存储情况如图5.1所示。5.1数组的概念图5.1引入数组就不需要在程序中定义大量的变

2、量,大大减少程序中变量的数量,使程序精炼,而且数组含义清楚,使用方便,明确地反映了数据间的联系。许多好的算法都与数组有关。熟练地利用数组,可以大大地提高编程和解题的效率,加强了程序的可读性。C++用方括号来表示下标,如用s[1],s[2],s[3]分别代表s1,s2,s3。定义一维数组的一般格式为类型标识符数组名[常量表达式];例如inta[10];它表示数组名为a,此数组为整型,有10个元素。说明:(1)数组名定名规则和变量名相同,遵循标识符定名规则。5.2一维数组的定义和引用5.2.1定义一维数组(2)用方括号括起来的常量表达式表示下标值,如下面的写法是合

3、法的:inta[10];inta[2*5];inta[n*2];//假设前面已定义了n为常变量(3)常量表达式的值表示元素的个数,即数组长度。例如,在“inta[10];”中,10表示a数组有10个元素,下标从0开始,这10个元素是:a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]。注意最后一个元素是a[9]而不是a[10]。(4)常量表达式中可以包括常量、常变量和符号常量,但不能包含变量。也就是说,C++不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值。例如,下面这样定义数组是不行的:

4、intn;cin>>n;//输入a数组的长度inta[n];//企图根据n的值决定数组的长度如果把第1,2行改为下面一行就合法了:constintn=5;数组必须先定义,然后使用。只能逐个引用数组元素的值而不能一次引用整个数组中的全部元素的值。数组元素的表示形式为数组名[下标]下标可以是整型常量或整型表达式。例如a[0]=a[5]+a[7]-a[2*3]5.2.2引用一维数组的元素例5.1数组元素的引用。#includeusingnamespacestd;intmain(){inti,a[10];for(i=0;i<=9;i++)a[i]=

5、i;for(i=9;i>=0;i--)cout<

6、数组元素赋初值时,可以不指定数组长度。例如inta[5]={1,2,3,4,5};可以写成inta[]={1,2,3,4,5};5.2.3一维数组的初始化例5.2用数组来处理求Fibonacci数列问题。可以用20个元素代表数列中的20个数,从第3个数开始,可以直接用表达式f[i]=f[i-2]+f[i-1]求出各数。程序如下:#include#includeusingnamespacestd;intmain(){inti;intf[20]={1,1};//f[0]=1,f[1]=1for(i=2;i<20;i++)5.2

7、.4一维数组程序举例f[i]=f[i-2]+f[i-1];//在i的值为2时,f[2]=f[0]+f[1],依此类推for(i=0;i<20;i++)//此循环的作用是输出20个数{if(i%5==0)cout<

8、法的思路是:将相邻两个数比较,将小的调

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。