C程序设计教案312课时——通过指针引用数组.docx
《C程序设计教案312课时——通过指针引用数组.docx》由会员分享,可在线阅读,更多相关《C程序设计教案312课时——通过指针引用数组.docx(14页珍藏版)》请在第一文库网上搜索。
1、教案序号031周次授课形式新授授课章节名称通过指针引用数组教学目的通过指针引用数组教学重点通过指针引用数组教学难点通过指针引用数组使用教具机房课外作业课后体会授课主要内容 8.3.1数组元素的指针 一个变量有地址,一个数组包含若干元素,每个数组元素都有相应的地址 指针变量可以指向数组元素(把某一元素的地址放到一个指针变量中) 所谓数组元素的指针就是数组元索的地址 可以用一个指针变量指向一个数组元素inta10=1,3,5,7,9,11,13,15,17,19);int*p;P=&a0; 8.3.2在引用数组元素时指针的运算在指针指向数组元索时,允许以下运算: 加一个整数(用+或+=),如p+1
2、 减一个整数(用-或-=),如PT 自加运算,如p+,+P 自减运算,如P,一P 两个指针相减,如p1-p2(只有P1和P2都指向同一数组中的元素时才有意义)(1)如果指针变量P已指向数组中的一个元素,则p+1指向同一数组中的下一个元素,P-I指向同一数组中的上一个元素。f1oata10,*p=a;假设a0的地址为2000,则 P的值为2000 p+1的值为2004 P-I的值为1996(2)如果P的初值为&a0,则p+i和a+i就是数组元素ai的地址,或者说,它们指向a数组序号为i的元素(3)*(p+i)或*(a+i)是p+i或a+i所指向的数组元素,即ai。(4)如果指针P1和p2都指向同
3、一数组p2-p1的值是4不能p1+p28.3.3通过指针引用数组元素引用一个数组元素,可用下面两种方法:(1)下标法,如ai形式(2)指针法,如*(a+i)或*(p+i)其中a是数组名,p是指向数组元素的指针变量,其初值p=a8.3.3通过指针引用数组元素例8.6有一个整型数组a,有10个元素,要求输出数组中的全部元素。解题思路:引用数组中各元索的值有3种方法:(1)下标法;(2)通过数组名计算数组元索地址,找出元索的值;(3)用指针变量指向数组元素分别写出程序,以资比较分析。(1)下标法。#inc1udeintmain()inta10;inti;printf(enter10integernu
4、mbers:n*);for(i=0;i10;i+)SCanf(%d”,ftai);for(i=0;i10;i+)printf(w,ai);printf(%r);return0;)(2)通过数组名计算数组元素地址,找出元素的值#inc1udeintmain()inta10;inti;printf(enter10integernumbers:n*);for(i=0;i10;i+)scanf(*%d*,Aai);for(i=0i10u)printf(a%dn,(a+i);printf(*n*);return0;)(3)用指针变量指向数组元素#inc1udeintmain()inta10;int*p,
5、i;printf(enter10integernumbers:n*);for(i=0;i10;i+)scanf%d*,Aai);for(p=a;p3种方法的比较:第(1)和第(2)种方法执行效率相同C编译系统是将ai转换为*(a+i)处理的,即先计算元素地址。因此用第(1)和第(2)种方法找数组元素费时较多。3种方法的比较:第(3)种方法比第(1)、第(2)种方法快用指针变量直接指向元素,不必每次都重新计算地址,像P+这样的自加操作是比较快的这种有规律地改变地址值(p+)能大大提高执行效率 3种方法的比较:用下标法比较直观,能直接知道是第几个元素。用地址法或指针变量的方法不直观,难以很快地判断
6、出当前处理的是哪一个元素。例8.7通过指针变量输出整型数组a的10个元素。A解题思路:用指针变量P指向数组元索,通过改变指针变量的值,使P先后指向a0到a9各元素。#inc1udeintmain()int*p,i,a10;P=a;printf(enter10integernumbers:n*);for(i=0;i10;i+)SCanf(%d”,p+);for(i=0u 8.3.4用数组名作函数参数 用数组名作函数参数时,因为实参数组名代表该数组首元素的地址,形参应该是一个指针变量 C编译都是将形参数组名作为指针变量来处理的intmain()voidfun(intarr,intn;intarra
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 教案 312 课时 通过 指针 引用 数组