C语言教程第7章_数组

上传人:zw****58 文档编号:51416539 上传时间:2018-08-14 格式:PPT 页数:72 大小:606KB
返回 下载 相关 举报
C语言教程第7章_数组_第1页
第1页 / 共72页
C语言教程第7章_数组_第2页
第2页 / 共72页
C语言教程第7章_数组_第3页
第3页 / 共72页
C语言教程第7章_数组_第4页
第4页 / 共72页
C语言教程第7章_数组_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《C语言教程第7章_数组》由会员分享,可在线阅读,更多相关《C语言教程第7章_数组(72页珍藏版)》请在金锄头文库上搜索。

1、第七章C程序设计(第三版) http:/ 2问题问题:给一组数排序,这组 数该 如何存放呢? ? 这些数据如何存放才便于排序这些数据如何存放才便于排序829456376171888 888888811111111111111 18 8 88888888这便是本章所要解决的问题这便是本章所要解决的问题C程序设计(第三版) http:/ 3l 本章要点 掌握一维、二维数组的定义和引用掌握一维、二维数组的定义和引用 方法、存储结构和初始化方法。方法、存储结构和初始化方法。 掌握有关一维数组的有关算法掌握有关一维数组的有关算法 掌握数组的运算。掌握数组的运算。C程序设计(第三版) http:/ 4l

2、主要内容7.1 一维数组的定义和引用7.2 二维数组的定义和引用7.3 字符数组C程序设计(第三版) http:/ 57.1 一维数组的定义和引用 C语言为这些数据,提供了一种构造数据类型: 数组。所谓数组就是一组具有相同数据类型的数据 的有序集合。 一个班学生的学习成绩 一行文字 一个矩阵 这些数据的特点是: 1.具有相同的数据类型 2.使用过程中需要保留原始数据C程序设计(第三版) http:/ 61.一维数组的定义格式为: 类型说明符 数组名常量表达式;例如: int a10;它表示定义了一个整形数组,数组名为a,此数组 有10个元素。7.1.1一维数组的定义说明: 1.数组名定名规则和

3、变量名相同,遵循标识 符定名规则。C程序设计(第三版) http:/ 72.在定义数组时,需要指定数组中元素的个 数,方括弧中的常量表达式用来表示元素的 个数,即数组长度。3.常量表达式中可以包括常量和符号常量, 但不能包含变量。也就是说,C语言不允许 对数组的大小作动态定义,即数组的大小不 依赖于程序运行过程中变量的值。C程序设计(第三版) http:/ 8例如: int n;scanf(“%d, /*在程序中临时输入 数组的大小 */int an; 数组说明中其他常见的错误:数组说明中其他常见的错误: float a0;/* 数组大小为0没有意义 */ int b(2)(3); /* 不能

4、使用圆括号 */ int k, ak; /* 不能用变量说明数组大小*/ C程序设计(第三版) http:/ 92.一维数组在内存中的存放每个数据元素占用的 字节数,就是基类型 的字节数 一个元素占4个字节一维数组: float mark100;mark0 mark1 mark2 mark3 . . .mark9986.5 92.0 77.5 52.0 . . .94.0低地址高地址C程序设计(第三版) http:/ 10注意: 定义数组时用到的“数组名常量表达式” 和引 用数组元素时用到的“数组名下标” 是有区别的 。 例如 int a10; t=a6; 7.1.2一维数组元素的引用1.数组

5、元素的引用方式 数组名下标 下标可以是整型常量或整型表达式。 例如: a0=a5+a7-a2*3C程序设计(第三版) http:/ 112.一维数组元素引用的程序实例程序实例#include void main()int i,a10;for (i=0; i=0; i-)printf(“%d ,ai);printf(“n); 运行结果如下:9 8 7 6 5 4 3 2 1 0程序使a0到 a9的值为09, 然后按逆序输出。C程序设计(第三版) http:/ 12对数组元素初始化的实现方法:1.在定义数组时对数组元素赋以初值。例如:int a10=0,1,2,3,4,5,6,7,8,9;将数组元

6、素的初值依次放在一对花括弧内。经过上面的 定义和初始化之后,a0=0,a1=1,a2=2, a3=3,a4=4,a5=5,a6=6,a7=7 ,a8=8,a9=9。 7.1.3一维数组的初始化C程序设计(第三版) http:/ 133. 如果想使一个数组组中全部元素值为值为 0,可以写成:int a10=0,0,0,0,0,0,0,0,0,0;或inta10=0;不能写成:int a10=0*10;2. 可以只给一部分元素赋值。 例如: int a10=0,1,2,3,4; 定义a数组有10个元素,但花括弧内只提供5个初值, 这表示只给前面5个元素赋初值,后5个元素值为0。C程序设计(第三版)

7、 http:/ 144. 在对对全部数组组元素赋赋初值时值时 ,由于数据的个数已经经确定,因此可以不指定数组长组长 度。例如:int a5=1,2,3,4,5;也可以写成 int a=1,2,3,4,5; int a10=1,2,3,4,5; 只初始化前5个元素,后5个元素为0。C程序设计(第三版) http:/ 15例例7-17-1:用数组来处理,求解Fibonacci数列。程序实例: #include void main()int i;int f20=1,1;Fibonacci数列公式:已知: a1=a2=1an=an-1+an-2 即:1,1,2,3,5,8,137.1.4一维数组程序举

8、例C程序设计(第三版) http:/ 16for(i=2;i void main() int a10;int i,j,t;printf(input 10 numbers :n); for (i=0;iai+1)t=ai;ai=ai+1;ai+1=t;printf(the sorted numbers :n);for(i=0;i void main()int a23=1,2,3,4,5,6;int b32,i,j;printf(array a:n);for (i=0;i void main() int i,j,row=0,colum=0,max;int a34=1,2,3,4,9,8,7,6,-

9、10,10,-5,2;max=a00;C程序设计(第三版) http:/ 37for (i=0;imax) max=aij;row=i;colum=j;printf(max=%d,row=%d,colum=%dn,max,row,colum); /*程序结束*/C程序设计(第三版) http:/ 387.3 字符数组7.3.1字符数组的定义定义方法与前面介绍的类似。例如: char c10;c0=I;c1= ;c2=a;c3=m;c4= ;c5=h;c6=a;c7=p;c8=p;c9=y;C程序设计(第三版) http:/ 39对字符数组初始化,可逐个字符赋给数组中各元素。例如:char c1

10、0=I,a,m,h,a,p,p,y 7.3.2字符数组的初始化C程序设计(第三版) http:/ 40如果初值个数小于数组长度,则只将这些字符赋给数 组中前面那些元素,其余的元素自动定为空字符。char c10=c, ,p,r,o, g,r,a,m; C程序设计(第三版) http:/ 41如果提供的初值个数与预定的数组长度相同,在定义 时可以省略数组长度,系统会自动根据初值个数确定 数组长度。char c=I, ,a,m, ,h, a,p,p,y;数组c的长度自动定为10。 C程序设计(第三版) http:/ 42char diamond55= , ,*, ,*, ,*,*, , , ,*,

11、 ,*, ,* , , ,*定义和初始化一个二维字符数组 C程序设计(第三版) http:/ 437.3.3字符数组的引用例7.6 输出一个字符串。 程序如下: #include void main() char c10=I, ,a,m, ,a, ,b,o,y;int i;for(i=0;i void main() char diamond5= , ,*,*, , *,*, , , ,*, ,*, ,*, , ,*;int i,j;for (i=0;i字符串2,函数值为一正整数。 (3) 如果字符串1str2) printf(yes);而只能用 if(strcmp(str1,str2)0) p

12、rintf(yes);C程序设计(第三版) http:/ 656. strlen函数 其一般形式为:strlen (字符数组) strlen是测试 字符串长度的函数。函数的值为 字符串中的实际长 度(不包括0在内)。例如:char str10=China;printf(%d,strlen(str);输出结果不是10,也不是6,而是5。也可以直接 测试 字符串常量的长度,如strlen(China); C程序设计(第三版) http:/ 667. strlwr函数 其一般形式为:strlwr (字符串) strlwr函数的作用是将字符串中大写字母换 成小写字母。 8. strupr函数 其一般形式为:strupr (字符串) strupr函数的作用是将字符串中小写字母换 成大写字母。 C程序设计(第三版) http:/cc

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

当前位置:首页 > 高等教育 > 教育学

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