资源描述:
《C语言编程教程 第7章 数组》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数组教学要点一、数组的含义与存储特点二、数组的定义与使用一维数组定义引用初始化例7-2、7-3二维数组定义引用初始化例7-4、7-5三、字符数组功能:用来解决字符串的存储及操作。定义初始化与赋值字符数组的输入与输出字符串处理函数例7-8教学要点数组的含义与存储特点1、含义:数组是若干相同数据类型的数据组成的有序集合。其中的每个个体称为元素。2、表示方法:数组具有统一的数组名,用数组名和下标来唯一地确定数组中的元素。a[i](i=0,1,2,...)a[0]数组名下标a[1]a[2]3、数组的存储特点:在内存中占用一片连续的存储单元。a[n-1]....一维数组
2、的定义1、定义形式类型说明符数组名[常量表达式]如:inta[10];//定义包含10个元素的整型数组a。2、要点:数组名的命名规则与变量名一样(标识符).数组名后面是[],不是().常量表达式表示数组元素的个数,即数组的长度。常量表达式可以是常量和符号常量,不能为变量。数组的数据类型与其中元素的数据类型一致。数组名代表此数组在内存中的起始地址。1、方法:数组名[下标]2、要点:数组与其他变量一样,必须先定义后使用.C规定只能逐个引用数组元素而不能一次引用整个数组.下标可以是整型常量或整型表达式如:a[1]=a[2*3]+3;下标的取值范围为:0~n-1例7-
3、1:一维数组元素的引用例7_1:一维数组的输入与输出。将数组按逆序输出.1、C规定只有静态数组和外部存储数组才能进行初始化2、在数组定义时直接赋值。staticinta[10]={1,3,4,5,6,2,4,6,7,8};3、可以只给部分元素赋初值.未赋值的元素值自动取0。inta[10]={1,2,3};4、静态数组若不赋初值,系统自动赋值为0.5、在对数组全部元素赋初值时,可以不指定数组长度.inta[5]={1,2,3,4,5};或inta[]={1,2,3,4,5};6、赋值时数据的类型应与数组类型保持一致。一维数组的初始化例7_2:用数组来处理Fib
4、onacci数列问题.if语句用来控制换行,每行输出5个数据。运行结果如下:11235813213455891442333776109871597258441816765例7_3:用起泡法对10个数进行排序(冒泡排序法)算法:(从小到大)将两个相邻的数进行比较,将小的数调换到前头.第一趟854209结果854290第5次854920第4次859420第3次895420第2次985420第1次第二趟54208结果54280第4次54820第3次58420第2次85420第1次二维数组的定义1、对二维数组的理解:二维数组是一种抽象,因为计算机的存储器是一维的。由编
5、译程序负责实现二维到一维的映射。2、定义形式:类型说明符数组名[常量表达式][常量表达式]例如:inta[3][4],x[4][4];不能写成:inta[3,4];二维数组的定义3、要点:可以把二维数组看成是一个特殊的一维数组或数组的数组。二维数组在内存中的存储:按行存放a[0]a[1]a[0][0]a[0][1]a[0][2]a[0][3]a[1][0]a[1][1]a[1][2]a[1][3]地址值数组元素b[0][0]b[0][1]b[0][2]b[1][0]b[1][1]b[1][2]b[2][0]b[2][1]b[2][2]3000H3002H300
6、4H3006H3008H300AH300CH300EH3010H例如:整型数组b[3][3]={{1,2,3},{4,5,6},{7,8,9}};1234567891、方法:数组元素的引用通过两个下标来指定。一般形式为:数组名[下标][下标]2、要点:下标可以是整型表达式;如a[2-1][2*2-1]数组元素可以出现在表达式中,也可以被赋值;如:b[1][2]=a[2][3]/2;注意下标值应在已定义的数组大小范围内;如:inta[2][3];则a[2][3]=3的引用是不合法的。请区分定义数组a[2][3]和引用元素a[2][3]的不同。二维数组的引用1.分
7、行给二维数组赋值.inta[2][3]={{1,2,3},{4,5,6}};2.去掉行的界限赋初值.inta[2][3]={1,2,3,4,5,6};3.只对部分行赋初值.inta[2][3]={{1},{4}};intb[3][4]={{1,2},{1,2,3,4}};4.若对数组的全部元素赋初值可以省略第一维的长度inta[][2]={1,2,3,4,5,6};intb[][4]={{3,3,3},{},{1,3}};二维数组的初始化例7_4:将一个二维数组的行列互换存放到另一个数组中.例如:a=12314456b=2536例7_5:有一个34的矩阵,求
8、出其中值为最大的元素的值以及它在矩阵中