《移动通信软件编程基础—C语言》第7章_数组.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《《移动通信软件编程基础—C语言》第7章_数组.ppt》由会员分享,可在线阅读,更多相关《《移动通信软件编程基础—C语言》第7章_数组.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 移动通信软件编程基础 C语言IC-MSP知识回顾 循环结构循环结构for语句三个表达式语句三个表达式循环变量赋初值循环变量赋初值循环条件循环条件循环变量增值循环变量增值for语句可以完全替换语句可以完全替换while语句语句for语句的三个表达式都可以省略,但不管怎么省略,两个分号不能省略,语句的三个表达式都可以省略,但不管怎么省略,两个分号不能省略,而且这三个表达式的功能要在或前或后的其他地方以其他的形式表现出来而且这三个表达式的功能要在或前或后的其他地方以其他的形式表现出来break 语句用在循环中时,可以直接终止循环,语句用在循环中时,可以直接终止循环,将控制转向本层循环后面的语句将控
2、制转向本层循环后面的语句continue 语句的作用是跳过循环体中剩余的语句而执行下一次循环语句的作用是跳过循环体中剩余的语句而执行下一次循环for语句嵌套的用法,可以和语句嵌套的用法,可以和while语句、语句、do-while语句可以互相嵌套语句可以互相嵌套for(表达式表达式1;表达式表达式2;表达式表达式3)IC-MSP7数组 第章IC-MSP本章目标 理解数组的概念及其用法理解数组的概念及其用法 掌握并能熟练使用一维数组掌握并能熟练使用一维数组 掌握二维数组的使用掌握二维数组的使用理解数组实现常用的算法理解数组实现常用的算法 IC-MSP构造类型v 迄今为止,我们使用的都是属于基本数
3、据类型(整型,迄今为止,我们使用的都是属于基本数据类型(整型,字符型,实型)的数据,字符型,实型)的数据,C C语言还提供了构造类型的数据。语言还提供了构造类型的数据。v构造类型数据是由基本类型数据按照一定规则组成的。构造类型数据是由基本类型数据按照一定规则组成的。IC-MSP数组程序举例#include#denfine N 5void main()int i,aN;printf(请输入%d个整数:“,N);for(i=0;i N;i+)scanf(%d,&ai);for(i=0;i N;i+)printf(%-4d,ai);printf(n);IC-MSP数组的必要性 IC-MSP数组的必要
4、性 一年级一年级 二年级二年级 三年级三年级 四年级四年级 五年级五年级 3 2 2 3 3 程序中的数组程序中的数组 学校中的学生学校中的学生 在程序设计中,为了处理方便,把具有相同类型在程序设计中,为了处理方便,把具有相同类型的数据有序的组织起来,就是数组的数据有序的组织起来,就是数组IC-MSPC语言一维数组定义 20 25 20 20 15 class4 3 2 1 0 class4 class3 class2 class1 class0 数组名数组名 数组元素数组元素 下标下标 数组的大小数组的大小 int class5数组的定义:数组的定义:数据类型数据类型 数组名数组名常量表达式
5、常量表达式IC-MSP一维数组 int a10;数组元素数组元素:a0,a1,a2,a3,a4,a5,a6,a7,a8,a9a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 10个数组元素个数组元素 定义数组:定义数组:内存内存 IC-MSP一维数组的声明 v 一维数组声明的一般形式:一维数组声明的一般形式:类型说明符类型说明符 数组名数组名常量表达式常量表达式例如:例如:int student50定义了一维数组定义了一维数组student,数组名为,数组名为student,数组元素的个数为,数组元素的个数为50,数组元素类,数组元素类 型为整型。型为整型。IC-MSP一维数组的声明
6、 v 类型说明符:指的是数组元素的类型类型说明符:指的是数组元素的类型v 数组名:符合标示符命名规则数组名:符合标示符命名规则v 常量表达式:表示数组元素的个数(数组的大小)常量表达式:表示数组元素的个数(数组的大小)。可以是整型常量或符号常量,不允许使用变量。常。可以是整型常量或符号常量,不允许使用变量。常量表达式在说明数组元素的个数时,也确定了数组元量表达式在说明数组元素的个数时,也确定了数组元素下标的个数。素下标的个数。v 数组元素是变量,所以要占用内存空间。只有命数组元素是变量,所以要占用内存空间。只有命名了数组元素的类型和个数之后编译器才能为数组分名了数组元素的类型和个数之后编译器才
7、能为数组分 配内存空间,并且所分配的内存空间是连续的。配内存空间,并且所分配的内存空间是连续的。IC-MSP一维数组的初始化 2-1 v 对数组所有元素赋初值,可以省略数组声明中数组对数组所有元素赋初值,可以省略数组声明中数组的长度的长度 例如:例如:int class5=20,30,40,50,60;省略数组长度省略数组长度 int class=20,30,40,50,60;两种方式赋值后,数组元素的值分别是:两种方式赋值后,数组元素的值分别是:class0=20,class1=30,class2=40,class3=50,class4=60IC-MSP一维数组的初始化 2-2 v 只给数组
8、中部分元素赋初值,数组长度不能省略只给数组中部分元素赋初值,数组长度不能省略 例如:例如:int class5=20,30,40;此时只对数组的前三个元素赋初值:此时只对数组的前三个元素赋初值:class0=20,class1=30,class2=40,其余元素为编译系统制定的默认初值其余元素为编译系统制定的默认初值0。v 对数组的所有元素赋初值对数组的所有元素赋初值0 0例如:例如:int class5=0,0,0,0,0;或或 int class5=0;IC-MSP一维数组中元素的访问方式 v 一维数组中的元素访问的一般形式一维数组中的元素访问的一般形式 数组名数组名 整型表达式整型表达式
9、 IC-MSP#include void main()int i,iNumber5;for(i=0;i=4;i+)iNumberi=2*i+1;printf(iNumber%d=%dn,i,iNumberi);一维数组示例 内存内存iiNumber0iNumber1iNumber2iNumber3iNumber413579IC-MSP使用数组时应注意的原则 v 数组要先声明后使用数组要先声明后使用 v 数组分配的是连续的内存空间,数组名是数组的首地数组分配的是连续的内存空间,数组名是数组的首地址址 v 声明数组时,变量后面的声明数组时,变量后面的内要使用常量表达式;内要使用常量表达式;不能使用
10、变量;对数组元素进行引用时,数组名后面的不能使用变量;对数组元素进行引用时,数组名后面的内的整型表达式可以是常数、已经赋值的整型变量或内的整型表达式可以是常数、已经赋值的整型变量或整型表达式。下标都是从零开始,都不能越界。整型表达式。下标都是从零开始,都不能越界。IC-MSP多维数组 v 当数组元素的下标在当数组元素的下标在2 2个或个或2 2个以上时,该数组称为个以上时,该数组称为多维数组。多维数组。v 多维数组的数组元素具有多个下标:多维数组的数组元素具有多个下标:数组名数组名 下标下标0 0 下标下标11 下标下标kk。v 多维数组在三维空间中不能用形象的图形表示。多维数组在三维空间中不
11、能用形象的图形表示。IC-MSP二维数组的声明 v 二维数组声明的一般形式:二维数组声明的一般形式:类型说明符类型说明符 数组名数组名常量表达式常量表达式 常量表达式常量表达式例如:例如:int pew45定义了二维数组定义了二维数组pew,数组名为,数组名为pew,数组元,数组元素的个数为素的个数为20,数组元素类型为整型。,数组元素类型为整型。IC-MSP二维数组 float b44;数组元素数组元素:b00,b01,b02,b03,b10,b11,b12,b13b20,b21,b22,b23,b30,b31,b32,b3316个数组元素个数组元素 定义数组:定义数组:第一行第一行 第二行
12、第二行 第三行第三行 第四行第四行 第一列第一列 第二列第二列 第三列第三列 第四列第四列 b01 b02 b03 b10 b11 b12 b13 b21 b20 b22 b23 b30 b31 b32 b33 b00 IC-MSP二维数组的声明 v二维数组定义中的第二维数组定义中的第1个下标表示该数组具有的行数,个下标表示该数组具有的行数,第第2 2个下标表示该数组具有的列数,两个下标之积是该个下标表示该数组具有的列数,两个下标之积是该数组具有的数组元素的个数。数组具有的数组元素的个数。v二维数组也是按顺序进行存放的,并且是按行存放,二维数组也是按顺序进行存放的,并且是按行存放,即在内存中,
13、先顺序存放第一行的元素,再存放第二行即在内存中,先顺序存放第一行的元素,再存放第二行的元素,以后依次存放后几行的元素。的元素,以后依次存放后几行的元素。v二维数组可以看作是一种特殊的一维数组。二维数组可以看作是一种特殊的一维数组。IC-MSP二维数组可以看作是特殊的一维数组int a4;int a4;一维数组名一维数组名 下标下标 int b44;int b44;二维数组名二维数组名 行下标行下标 列下标列下标 a0 a1 a2 a3b0 0b0 1b0 2b0 3b1 0b1 1b1 2b1 3b2 0b2 1b2 2b2 3b3 0b3 1b3 2b3 3IC-MSP二维数组可以看作是一种
14、特殊的一维数组 pew45IC-MSP二维数组的初始化 2-1 v 分行给二维数组所有元素赋初值分行给二维数组所有元素赋初值 int pew33=1,2,3,4,5,6,7,8,9;v 按数组排列的顺序将所有元素写在一个花括弧内按数组排列的顺序将所有元素写在一个花括弧内 int pew33=1,2,3,4,5,6,7,8,9;v 给二维数组所有元素赋初值,二维数组第一维的长给二维数组所有元素赋初值,二维数组第一维的长度可以省略,但不能省略第二维的长度。度可以省略,但不能省略第二维的长度。int pew 3=1,2,3,4,5,6,7,8,9;IC-MSP二维数组的初始化 2-2 v 在定义时也
15、可以只在定义时也可以只对部分元素赋初值而省略第一维对部分元素赋初值而省略第一维的长度的长度1 1。分行赋初值,其余元素值自动为。分行赋初值,其余元素值自动为0 0。int pew 3=1,2,4,7,8;赋值后赋值后:pew=1,2,0,4,0,0,7,8,0;2 2。元素写在一个花括弧内。元素写在一个花括弧内,其余元素值自动为,其余元素值自动为0 0。int pew 3=1,2,3,4,5,6,7;赋值后赋值后:pew=1,2,3,4,5,6,7,0,0;IC-MSP二维数组中元素的访问方式 v 二维数组中的元素访问的一般形式二维数组中的元素访问的一般形式 数组名数组名 整型表达式整型表达式
16、 整型表达式整型表达式 IC-MSP教室共有教室共有1010排座位、每排有排座位、每排有8 8个座位。座位编个座位。座位编号从前向后、自左向右分别为号从前向后、自左向右分别为1 1到到1010、1 1到到8 8。v 题目:题目:#include void main()int i,j,iClasspew108;printf(各座位的座位号为:各座位的座位号为:n);for(i=0;i 10;i+)for(j=0;j 8;j+)iClasspewij=(i+1)*10+(j+1);printf(%4d,iClasspewij);printf(n);过程演示过程演示 二维数组示例 IC-MSPv 在
17、程序设计中,为了处理方便,把具有相同类型的若干在程序设计中,为了处理方便,把具有相同类型的若干数据按有序的形式组织起来,就是数组,它包含以下三个数据按有序的形式组织起来,就是数组,它包含以下三个方面的含义:方面的含义:v 数组就是包含了多个元素的数据集合数组就是包含了多个元素的数据集合v 数组中的元素在内存中是连续存放的数组中的元素在内存中是连续存放的v 数组中的元素都属于相同的数据类型数组中的元素都属于相同的数据类型数组特性 类型说明符类型说明符 数组名数组名常量表达式常量表达式 常量表达式常量表达式 说明数据类型说明数据类型 数组的大小数组的大小 IC-MSP数组的算法v关于数组的基本算法
18、:关于数组的基本算法:1.1.求最值求最值2.2.查找查找3.3.排序排序4.4.插入插入IC-MSP求任意求任意6 6个数中的最大值和最小值。个数中的最大值和最小值。v 题目:题目:#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-1 IC-MSP#include int
19、 i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-2 1252480563IC-MSP#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1
20、;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-3 1252480563iMax=a0=iMin=a0=12121212IC-MSP#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin)
21、;求最值算法的实现 9-4 12524805631212IC-MSP#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-5 12524805631212iMax=12iMin=12a1=52iMax=52iMin=1252IC-MSP#include int i,iMax,i
22、Min,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-6 12524805635212iMax=52iMin=12a2=48iMax=52iMin=12IC-MSP#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,
23、&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-7 12524805635212iMax=52iMin=12a3=0iMax=52iMin=0 0IC-MSP#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iM
24、in=ai;printf(iMax=%dn iMin=%dn,iMax,iMin);求最值算法的实现 9-8 1252480563520iMax=52iMin=0a4=56iMax=56iMin=1256IC-MSP#include int i,iMax,iMin,a6;printf(input 6 numbers:n);for(i=0;i 6;i+)scanf(%d,&ai);iMax=a0;iMin=a0;for(i=1;i iMax)iMax=ai;if(ai iMin)iMin=ai;printf(“max=%dn min=%dn,iMax,iMin);求最值算法的实现 9-9 125
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移动通信软件编程基础C语言 移动 通信 软件 编程 基础 语言 数组
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内