- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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
您可能关注的文档
- 《C语言程序设计》课程.doc
- 《C语言程序设计案例教程(第四版)》全套章节习题答案.docx
- 《C语言程序设计案例教程(第四版)》章节习题答案第1章基本知识.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第2章算法.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第4章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第5章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第6章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第7章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第8章结构体、共用体和枚举类型.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第9章位运算.doc
最近下载
- 模拟电路 教学课件 作者 张丽华第2章 ch02 2.ppt VIP
- 高中英语教学竞赛公开课、高考复习课件——2025年高考英语全国二卷写作第一节应用文写作催稿信课件.pptx VIP
- 辐射环境监测员技术考核试卷及答案.docx
- 中考英语阅读理解试题内容效度研究 论文.doc VIP
- 网络运维与安全课程.pptx VIP
- 2025在线网课《信息检索与科技写作( 理大)》单元测试考核答案.pdf VIP
- 柳工CPCD30-35叉车零件图册.pdf VIP
- 编剧合同范文.docx VIP
- 医养中心营销策划方案.pptx
- 品牌商务(brand commerce)时代的三大数字营销趋势.docx VIP
文档评论(0)