C程序设计教案(第7章第3次).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
周次:第 周 课次: 授课时间:年 月 日 章节内容: 第七章 指针 7.5 指针与函数 7.6 指针数组 教学目标: 通过学习,了解指针与函数的概念,能熟练掌握指针在字符串和函数中的使用方法。掌握指针作为函数参数的应用;学会使用字符串的指针和指向字符串的指针变量;学会使用指向函数的指针变量;了解指向指针的指针的概念及其使用方法。本章内容为后续第8章结构体、第9章文件、课程设计等作好准备,同时,本章的内容在后续课程“数据结构”奠定基础。 教学重点: 指针与函数 指针型函数与函数指针变量 指针数组 教学难点: 指针型函数 指针数组 教学方法和授课手段 多媒体教室,电子课件。 教学过程: 预备(复习):数组的指针与指向数组的指针变量的定义;字符串的指针与指向字符串的指针变量,字符串指针变量的说明与用法与字符数组的使用。(5 分钟) 课前提问: (5 分钟) 课程引入: 例如:int (*pf)(int,int); 表示pf是一个指向函数入口的指针变量,该函数的返回值(函数值)是整型。 函数名就是该函数所占内存区的首地址把函数的这个首地址(或称入口地址)。赋予一个指针变量,使该指针变量指向该函数。然后通过指针变量就可以找到并调用这个函数我们把这种指向函数的指针变量称为“函数指针变量”。(10分钟) 课程新授:(60分钟) 7.5 指针与函数 7.5.1 函数指针变量 函数指针变量定义的一般形式为: 类型说明符 (*指针变量名)(形参类型1,形参类型2…); 【例7.14】用指针形式实现对函数调用的方法求两个数中的较大数 /* 源文件名:Li7_14.cpp */ #include stdio.h int max(int a,int b) {if(ab)return a; else return b; } void main() {int max(int a,int b); int(*pmax)(int,int); int x,y,z; pmax=max; printf(input two numbers:\n); scanf(%d%d,x,y); z=(*pmax)(x,y); printf(maxnum=%d,z); } 程序运行后,屏幕显示: input two numbers: 5 8 maxnum=8 调用函数的一般形式为:(*指针变量名) (实参表) 7.5.2 指针型函数 所谓函数类型是指函数返回值的类型。在C语言中允许一个函数的返回值是一个指针(即地址),这种返回指针值的函数称为指针型函数。 定义指针型函数的一般形式为: 类型说明符 *函数名(形参表) { …… /*函数体*/ } 其中函数名之前加了“*”号表明这是一个指针型函数,即返回值是一个指针。类型说明符表示了返回的指针值所指向的数据类型。 如: int *ap(int x,int y) { ...... /*函数体*/ } 表示ap是一个返回指针值的指针型函数, 它返回的指针指向一个整型变量。 7.6指向指针的指针变量 7.6.1 指针数组的概念 指针数组说明的一般形式为: 类型说明符 *数组名[数组长度] 其中类型说明符为指针值所指向的变量的类型。 7.7指针的实例 指向指针的指针变量定义如下: 类型标识符* *指针变量名 【例7.21】编写使用指针方法交换二个整数值的函数swap,在主函数中调用swap函数,完成3个整数的排序. /* 源文件名:Li7_21.cpp */ #include stdio.h swap(int *p1, int *p2) { int p; p=*p1; *p1=*p2; *p2=p; } void main() {int a,b,c; int *p1,*p2,*p3; printf(\nInput 3 numbers:); scanf(%d%d%d, a,b,c); p1=a; p2=b; p3=c; if (ab) swap(p1,p2); /* 函数调用 */ if (ac) swap(p1,p3); /* 函数调用 */ if (bc) swap(p2,p3); /* 函数调用 */ printf(\nThe sorted numbers: %d,%d,%d\n,a,b,c); } 程序运行后,屏幕显示: Input 3 numbers: 100 200 150 The sorted numbers: 100 150 200 课程小结(10分钟) 通过指针可使用主调函数和被调函数之间共享变量或数据结构,便于实现双向数据通讯。 便于表示各种数据结构,编写高质量的程序 提高程序的编译效率和执行速度。 与指针、函数有关说明与意义 int

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档