语言数组 ppt课件

上传人:aa****6 文档编号:54896787 上传时间:2018-09-21 格式:PPT 页数:46 大小:1.08MB
返回 下载 相关 举报
语言数组 ppt课件_第1页
第1页 / 共46页
语言数组 ppt课件_第2页
第2页 / 共46页
语言数组 ppt课件_第3页
第3页 / 共46页
语言数组 ppt课件_第4页
第4页 / 共46页
语言数组 ppt课件_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《语言数组 ppt课件》由会员分享,可在线阅读,更多相关《语言数组 ppt课件(46页珍藏版)》请在金锄头文库上搜索。

1、第六章 数 组,2010年4月21日星期三,C 语言程序设计,6.1 一维数组 6.2 二维数组 6.3 字符数组 6.4 本章小结,本章内容,2010年4月21日星期三,C 语言程序设计,2010年4月21日星期三,C 语言程序设计,当变量个数少,且彼此独立时,采用变量先定义,后赋值,再使用。如:int a,b,c ; a = 5; b=10;c=23; printf(“%d,%d,%d”,a,b,c);,当变量个数比较多,并且有内在的关系时,例如 :全班有30个人,每人一个成绩 如:int c1,c2,,c30 (可以利用数组),数组是怎么构成的? 一组有序数据的集合,各个元素属于同一个类

2、型,用统一的名称标识这一组数,用下标唯一地确定这组数中的每一个值,这就构成了“数组”。,数组的基本概念,数组,:有限个相同数据类型的数据分量的有序集合。,2010年4月21日星期三,C 语言程序设计,一 、一维数组的定义,格式:,类型 标识符 长度 ,所有元素为 同一类型,变量名, 即数组名,数组中所含 元素的个数,int a10;由10个整数组成的数组,共同拥有数组名,a,2、数组长度必须是整型量,int a2*3,说明:,1、用方括号将数组的长度括起来,3、数组长度也可以用常量表达式,4、不能对长度做动态定义,或者不定义长度,如:int n;n=10;int an;,6.1 一维数组的定义

3、和使用,例如:int a5;,2010年4月21日星期三,C 语言程序设计,数组的三要素:,(1)相同的数据类型(定义数组时规定),(2)有限的成员个数 (定义数组时规定),(3)彼此有序的排列 (引用数组元素时的下标),int a5,int a5; a0=1;a1=2;a2=3;a3=4;a4=5;,6.1 一维数组的定义和使用,2010年4月21日星期三,C 语言程序设计,数据类型 数组名 常量表达式初始化数据;,格式:,1.定义数组时,对全部元素赋值int a5=1,2,3,4,5;,2. 对部分元素赋值,float x5 = 1.9 ,2.0 ;,x0=1.9;x1=2.0;,3.若要

4、对数组的全部元素初始化,则可省略数组的长度int a = 1,2,3,4;,二、 一维数组的初始化,6.1 一维数组的定义和使用,用 包括所有初值, 用逗号分隔各数值,且初值的个数不能大于数组长度。,按顺序给前2个元素赋值,其余元素为均为 0,数组长度=元素的个数,2010年4月21日星期三,C 语言程序设计,三 、一维数组元素的引用,1、数组必须先定义,后赋值,再使用,2、数组中的元素必须逐一引用,3、通过数组名及其元素的下标引用,定义: 类型 数组名长度 如: int a10,引用: 数组名下标,a0,a1,a9为数组a10中的所有元素,(1)下标表示了元素在数组中的位置 (2)下标可以用

5、表达式 a2*3相当于a6,说明,6.1 一维数组的定义和使用,下标范围从 0 到长度-1,2010年4月21日星期三,C 语言程序设计,例1:main() int i;int a10 = 1,2,3,4,5,6,7,8,9,10;for(i=0;i10;i+)printf(“%3d“,ai); ,运行结果:1 2 3 4 5 6 7 8 9 10,6.1 一维数组的定义和使用,int a10;for(i=0;i10;i+)scanf(“%d“,通过数组名和下标, 引用数组中的每一个元素,2010年4月21日星期三,C 语言程序设计,例:有一个数组,内有10个元素,求出最小的元素和它的下标。,

6、int a10,a0,a i ,a9,i=?,1.定义两个临时变量 min和 k,2.假定第一个元素就是最小的,min=a0,k=0,3.用min与数组中的每一个元素ai比较, 若ai比min小, 将ai赋给min, 同时将下标i赋给k, 否则,继续比较。,6.1 一维数组的定义和使用,分析:,2010年4月21日星期三,C 语言程序设计,26,min=a0,i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9,1326 min=a1 k=1,循 环,33 min和k的值不变,13,3,203 min和k的值不变,11 min和k的值不变,1,&min,531 min和k的值

7、不变,121 min和k的值不变,651 min和k的值不变,min=1 k=5,6.1 一维数组的定义和使用,2010年4月21日星期三,C 语言程序设计,main( ) int i,a10,min,k;for(i=0;iai ) min=ai ;k=i ; printf(“%d,%d”,k,min); ,循环输入10个数,循环找出最小的,输出最小值和原始下标,2010年4月21日星期三,C 语言程序设计,例 1. 将6个实数由小到大排序。 ,5 8 9 4 7 2,第一轮结束:,2 8 9 5 7 4,结 果:,2 4 5 7 8 9,算法一:选择排序法,选择排序思路:将数组中的每一个元素

8、和其后面所有的元素进行比较,如果某一个元素小于该数,将互换位置。,第一轮开始:,2010年4月21日星期三,C 语言程序设计,#include main() int a6=5,8,9,4,7,2;int i,j,t;for(i=0;iaj)t=ai;ai=aj;aj=t; for(i=0;i6;i+) /将比较后的记过输出来printf(“%5d“,ai); ,程序代码一:,2010年4月21日星期三,C 语言程序设计,#include main() int a6=5,8,9,4,7,2,i,j,t,k; /*k为数组的下标 */for(i=0;iaj) k=j; /* 记下较小的元素的下标*

9、/t=ai; ai=ak; ak=t; /*每轮结束后交换*/for (i=0;i6;i+)printf(“a%d=%dn“,i,ai); ,程序代码二:,2010年4月21日星期三,C 语言程序设计,算法二: 冒泡排序,冒泡法的思路:将相邻两个数比较,如果相邻的两个值是升序排列的,就保持原样,如果是降序排列的,就交换它们的值。(实质:大的沉下去,小的浮上来),start: a0 a1 a2 a3 a4 a5 a6 a72 57 29 89 42 34 16 11 times:2 29 57 42 34 16 1 89 2 times: 2 29 42 34 16 1 57 89 3 time

10、s: 2 29 34 16 1 42 57 89 4 times: 2 29 16 1 34 42 57 89 5 times: 2 16 1 29 34 42 57 89 6 times: 2 1 16 29 34 42 57 89 7 times: 1 2 16 29 34 42 57 89,2010年4月21日星期三,C 语言程序设计,main() int a10=2,57,29,89,42,34,16,1;int pass , time , temp,xb;for( pass =1; pass atime+1)/* 判断每相邻两个元素下标*/temp =atime; atime=ati

11、me +1;atime +1=temp;for (xb=0; xb10; xb+) printf( “a%d=%d n”, xb, axb ); ,程序代码一:,2010年4月21日星期三,C 语言程序设计,#include #define SIZE 8 main( ) int aSIZE=2,57,29,89,42,34,16,1;int i, pass, hold; clrscr(); for(i=0;iai+1)hold=ai; ai=ai+1; ai+1=hold; for(i=0;i=SIZE-1;i+)printf(“%4d“,ai); ,程序代码二:,2010年4月21日星期三,

12、C 语言程序设计,6.2 二维数组的定义和引用,当一个一维数组中的每个元素本身又是一个一维数组时,该数组构成“二维数组” 。,一、二维数组的定义,格式:类型 标识符长度1长度2,如:int a44,行,列,a0 a1 a2 a3,一维数组a4,二维数组a44,2010年4月21日星期三,C 语言程序设计,说明:1. 二维数组元素需要两个下标表示例:int a44表示数组a中有4行4列共16个数据,2.二维数组在存储空间中是按行优先存储,第一行,6.2 二维数组的定义和引用,2010年4月21日星期三,C 语言程序设计,二、二维数组的初始化,形式:1、 对全部元素赋初值,分行,各用一个 。int

13、 a23=1,2,3,4,5,6;,2 整体赋值,系统自动分行,int a23=1,2,3,4,5,6;,1,2,3,3 对部分元素赋初值,注意区别:,(1)int a23=1,2,3;,(2) int a23=1,2,3;,(3) int a23=0,1,2,3;,说明:当为全部元素赋值时,一维长度可省略,如:int a 3=1,2,3,4,5,6;,6.2 二维数组的定义和引用,2010年4月21日星期三,C 语言程序设计,三 、二维数组的引用,原则:,逐一引用,说明:1.数组名下标1下标2下标1从0到长度-1下标2从0到长度-1,方法:,数组名 N1N2,6.2 二维数组的定义和引用,2010年4月21日星期三,C 语言程序设计,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号