第1讲 数值型数组共52页文档
- 格式:ppt
- 大小:810.50 KB
- 文档页数:52
第一讲数组江苏省黄埭中学王荣生小明的爸爸有三个儿子,老大叫大毛,老二叫二毛,老三叫什么?程序中经常需要存储、处理大量的具有相同类型的数据(成百上千,甚至几十万),如果用简单变量来存储这些数据,为这些变量取不同名字将是非常艰巨无法想象的事!为了解决大量相同类型数据的存储、命名问题,C++为我们提供了数组这一复合数据类型(多个简单变量类型组合而成的)。
它在一块连续的存储空间中存储这些数据,利用数组名+下标(序号)来确定每个数据。
这样就非常方便的解决了大量的、具有相同类型的数据的存储、命名、操作等问题。
数组就是在一段连续的存储空间中分配多个存储单元,每个数据存储在一个独立的存储单元中,这些存储单元又称为数组元素。
用数组名+下标来表示。
例如:int a[10];//定义一个整数类型数组,它有10个int类型的元素;char b[26];//定义一个字符类型数组,它有26个char类型的元素它们的数组元素分别是:a[0],a[1],a[2],......,a[9],其类型都是intb[0],b[1],b[2],......b[25],其类型都是char注意:数组元素的下标从0开始,不是1。
其在内存中分配情况如下图所示9876.........3210a[9]a[8]a[7]a[6]a[3]a[2]a[1]a[0]a (相当于10个整型变量)说明:1)a是数组名称,它代表整个储存空间的首地址。
“[]”是下标运算符,“[]”内的数字称为下标,表示是数组的第几个元素。
2)a[0]是数组的第0个元素,a[1]是数组的第1个元素,......3)下标可以是常数,如a[2],也可以是变量,如:a[i]4)一个数组元素可以当作是简单变量,与简单变量用法一样。
5)下标必须是非负整数,不能是负数、小数,且不能超出数组定义的范围,超出定义的范围称为“越界”。
例如:int a[10];a[-3]=5; a[10]=15; int k=a[20];C++不对下标是否越界进行检查,因此,虽然数组下标越界了,编译却能通过,但程序运行时可能会出现意想不到的结果,甚至崩溃,这是编程中常见的错误!所以编写程序时要时刻注意控制。
**中等专业学校C语言程序设计教案执教者科目C语言程序设计班级课题 5.1数值型数组(一)课型新授时间课时 2教学目标1、了解数组的定义,使用。
2、跟据数组的作用,进行多例题分析,巩固学生知识。
3、能运用适当变量进行描述一个算法。
教学重点数组的概念数组的使用教学难点数组的概念。
应多选用例题讲解分析课前准备多媒体网络教学平台、教学课件、例题教学环节教学过程学生活动引入新课Main()作用以及之前所学数学函数的作用引入新课回顾,思考,发现问题新授新授数组是若干相同数据的有序集合。
在数组中,每一个变量称之为一个数组元素。
数组元素可以用一个统一的数组名和下标来唯一地确定。
下标用来表示数组元素在数组中的位置。
数组的特点是在程序中可以通过下标访问数组中的每一个元素。
在处理大量的相同类型数据的场合,使用数组是非常方便的。
5.1 数值型数组5.1.1 一维数组1.一维数组的定义一维数组的定义格式为:类型说明符数组名[常量表达式];其中,类型说明符包括int、float、double等,它表示数组的类型,也即数组中每个元素的数据类型。
关于一维数组的定义,有以下几点说明:(1)数组名的命名规则与变量名相同,遵循标识符的命名规则。
(2)数组名后是用方括号括起来的常量表达式,不能用圆括号。
例如:int a(10); 是不正确的。
(3)常量表达式表示元素的个数,即数组长度。
(4)常量表达式中一般包括整型常量、字符常量或符号常量,不能包含变量。
例如:int n=8;int a[n];是不正确的。
2.一维数组的引用(1)数组元素由数组名和下标来表示。
下标表示该元素在数组中的位置,它可以是整型常量、整型变量或整型表达式。
例如:a[3]【熟记】组合知识点感兴趣了解认真听讲解a[3+2](2)C语言规定:数组元素下标从0开始,最大下标为数组长度减1。
例如:int a[5];数组a中有5个元素:a[0],a[1],a[2],a[3],a[4]。
数值型数组一、实习目的1.熟练掌握一维、二维数值型数组的定义、元素赋值、引用和输出方法;2.学会灵活运用数组元素的下标编程,能用数组思想优化程序;3.理解一维数组的指针和指针变量,会用指针编写程序;4.理解并掌握指向二维数组元素的指针和指向行的指针这两种不同类型的指针;5.熟练掌握与数组有关的算法,如排序等;6.进一步熟悉选择和循环结构。
二、实习内容1.例6-2,体会数组的定义、元素赋值、引用和输出方法;并试用指针解决。
2.例6-3、6-4,排序是程序设计学习的重点,要求重点掌握;3.例6-5,试用普通变量的方法解,并将两种方法进行比较,体会使用数组的特点;4.例6-7,体会数组的指针特点;5.例6-10、6-11、6-12,体会二维数组的定义、元素赋值、引用和输出方法。
6.例6-17,认真分析运行结果,总结二维数组指法的使用方法。
三、注意事项1.数组:用一个统一的名字和不同的下标来标识有序的一组数据,元素编号从0开始,在内存占据一片连续的区域,每一个数组元素都等价于一个普通变量。
运用数组使程序精练。
数组的奥妙和编程的灵活性全体现在下标上。
下标可以是常量、变量、表达式,还可以是数组元素,甚至是函数;2.对一维数组元素指针的理解:⑴理解一维数组元素的指针与变量的指针定义形式相同。
如int *p;指针变量p可以指向int型变量,也可以指向int型数组,且p++、p+i都是有意义的;⑵用指针引用数组元素的方式:*p或*(p+表达式)。
系统在计算机地址时,p++、p+i 按p+i*d处理,d为基类型所占的字节数:char型1字节、int型2字节、float型4字节、double型8字节;⑶一维数组名代表地址,所以又可以当指针用,一维数组指针名也可以当数组名用。
所以,引用一维数组元素的方法就有:下标法a[i]、p[i]和指针法*(a+i)、*(p+i)。
这是非常重要的一个关系,体现了数组与其指针的实质;3.对二维数组指针的理解:⑴首先从概念上要分清两种指向不同的指针:指向元素的与指向行的;⑵指向二维数组元素的指针,本质上与普通变量的指针及一维数组的指针相同。