第七章数组 主讲福州大学数学与计算机学院韩晓芸 E-mail:hxy@fjtv.net
1 第七章 数 组 主讲 福州大学数学与计算机学院 韩晓芸 E-mail:hxy@fjtv.net
第7章数组 第七章数组 第一节数组概述 第二节一维数组 第三节二维数组 第四节字符数组 10:39 2
第7章 数 组 10:39 2 第一节 数组概述 第二节 一维数组 第三节 二维数组 第四节 字符数组 第七章 数 组
第7章数组 第一节数组概述 例1: 输入三个数a,b,c,由大到小进行排序 maino int a, b, c, t scanf(%d%d%d, &a, &b, &c) if(a<b)t=a; a=b; b=t; 1 if(a<)it=a; a=c, c=t;] if(b<c)t=b; b=cC=t;] printf("%d, % d, %d", a, b, c) 10:3g 3
第7章 数 组 10:39 3 第一节 数组概述 例1: 输入三个数a,b,c,由大到小进行排序。 main() {int a,b,c,t; scanf(“%d%d%d”,&a,&b,&c); if(a<b) {t=a;a=b;b=t;} if(a<c) {t=a;a=c;c=t;} if(b<c) {t=b;b=c;c=t;} printf(“%d,%d,%d”,a,b,c); }
第7章数组 数组的有关概念 一数组是具有一定顺序关系的若干相同类型变 量的集合,特点: 数组具有有序性 ·数组具有同一性 数组具有整体性 组成数组的每个分量称为数组的元素; 数组的维数(一维,二维,三维) 10:39
第7章 数 组 10:39 4 数组的有关概念 – 数组是具有一定顺序关系的若干相同类型变 量的集合,特点: • 数组具有有序性 • 数组具有同一性 • 数组具有整体性 – 组成数组的每个分量称为数组的元素; – 数组的维数(一维,二维,三维)
第7章数组 第二节一维数组 21定义 22引用 23初始化 24输入和输出 25应用举例 10:39 5
第7章 数 组 10:39 5 2.1 定义 2.2 引用 2.3 初始化 2.4 输入和输出 2.5 应用举例 第二节 一维数组
第7章数组 21定义 类型说明符数组名[常量表达式]; int a5] a[0]a[]a[2]a[3a4] char c[20] float x[10]: 注意: 数组名命名规则与变量名相同; 数组名后是方括号,而不是小括号; 常量表达式表示元素的个数,下标从零开始。 数组的大小是固定的,不能动态定义 例如:intn; scanf(%d”,&n);inta[m];是错误的。 10:39 6
第7章 数 组 10:39 6 a[0] a[1] a[2] a[3] a[4] 2.1 定义 类型说明符 数组名[常量表达式]; int a[5]; char c[20]; float x[10]; 注意: – 数组名命名规则与变量名相同; – 数组名后是方括号,而不是小括号; – 常量表达式表示元素的个数,下标从零开始。 – 数组的大小是固定的,不能动态定义。 – 例如:int n; scanf(“%d”,&n);int a[n];是错误的
第7章数组 22引用 数组必须先定义,后使用。 只能函个引用数组元素。 引用形式:数组名[下标] 其中下标可以是整型放常量、变量或表达式; 数组长度为M时,下标值为0,1,2..M-1 例如: 定义数组inta[3],数组元素为a[o]a[a[2] a[2 a+:(为整型变量 10:39
第7章 数 组 10:39 7 2.2 引用 数组必须先定义,后使用。 只能逐个引用数组元素。 引用形式:数组名[下标]; – 其中下标可以是整型的常量、变量或表达式; – 数组长度为M时,下标值为0,1,2…M-1 例如: 定义数组 int a[3],数组元素为a[0] a[1] a[2] a[2]=1; a[i+j];(i,j为整型变量)
第7章数组 23初始化 维数组的初始化 可以用赋值语句或输入语句使数组中的元 素得到值,但占运行时间,同时也可以使数组 在程序运行之前初始化,即在编译期间使之得 到初值。对数组元素的初始化可以用以下方法: 1)在定义数组时,对数组元素赋以初值。 如:inta[10]={0,1,2,34,567,89}; 10:39
第7章 数 组 10:39 8 2.3 初始化 一维数组的初始化 可以用赋值语句或输入语句使数组中的元 素得到值,但占运行时间,同时也可以使数组 在程序运行之前初始化,即在编译期间使之得 到初值。对数组元素的初始化可以用以下方法: 1)在定义数组时,对数组元素赋以初值。 如:int a[10]={0,1,2,3,4,5,6,7,8,9};
第7章数组 维数组的初始化 2)可以只给一部分元素赋值。 如:inta[10]={0,12,3,4】}; 表示只给前5个元素赋初值,后5个元素自 动赋以0值。若要对所有元素赋同一值时应该 将所有值逐个写出,不能省略 如:ints[5]=1,11,1,1} 10:39 9
第7章 数 组 10:39 9 一维数组的初始化 2)可以只给一部分元素赋值。 如:int a[10]={0,1,2,3,4}; 表示只给前5个元素赋初值,后5个元素自 动赋以0值。若要对所有元素赋同一值时应该 将所有值逐个写出,不能省略。 如:int s[5]={1,1,1,1,1};
第7章数组 一维数组的初始化 3)在对全部数组元素赋初值时,可以不指定数 组长度。 如:inta5]={1,2,345}可以书写成 inta[]={1,2,34,5} 10:39 10
第7章 数 组 10:39 10 一维数组的初始化 3)在对全部数组元素赋初值时,可以不指定数 组长度。 如:int a[5]={1,2,3,4,5}; 可以书写成 int a[ ]={1,2,3,4,5};