C语言程序设计任务驱动式教程 教案 第八单元:指针1_第1页
C语言程序设计任务驱动式教程 教案 第八单元:指针1_第2页
C语言程序设计任务驱动式教程 教案 第八单元:指针1_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8单元指针(第一讲)授课内容:学时:2学时(90分钟)教学目的和要求:通过变量的定义在内存中的存储方式的讲解,掌握指针的定义、引用。教学重点:了解指针的概念,掌握指针的定义,掌握指针的引用教学难点:指针的理解和运用。教学方法和手段:本节采用以教师为主导,学生为主体的案例教学,首先通过实例引出本节的教学内容,同时在教学过程中同时采用提问法、讨论法和互动式教学方法。思政元素:增强团结、合作意识、灵活处理问题授课内容提纲:一、复习旧课导出新课教学回顾:以提问方式,教师引导总结【约10分钟】教学回顾:以提问方式,教师引导总结【约10分钟】问题2:内存如何工作?问题3:变量如何在内存中存储?教师总结:新课讲解1:【约35分钟】.内存操作引入,吸引学生学习兴趣.思路指导:教师引导学生思考变量的定义与使用在内存中的变化。可以存放内存地址的变量是指针,存储在指针中的地址是另一个变量的首地址。我们可以定义指针变量P,存放变量sum的首地址,变量新课讲解1:【约35分钟】.内存操作引入,吸引学生学习兴趣.思路指导:教师引导学生思考变量的定义与使用在内存中的变化。二、新课讲解先演示任务一,引入,引起学生兴趣。再逐一讲解以下知识点,最后指导学生能够编写任务程序。教师总结:指针是C语言中最强大的工具之一,是精华所在,也是最容易让人困惑的主题。只有在正确理解指针概念的基础上,才能对其操作灵活的运用。(-)任务一:交换两个变量的值一一指针的概述•讲解步骤:教师引导学生总结回答下列问题:内存的工作原理。教师引导学生总结回答下列问题:内存的工作原理。.借助指针完成交换•指针变量的定义格式:基类型*指针变量名举例:int*pl;(定义pl为指向整型变量的指针变量)char*p2;(定义p2为指向字符型变量的指针变量)float*p3;(定义p3为指向实型变量的指针变量)・指针变量赋值.通过取地址运算符(&)获得地址值单目运算符(&)用来求出运算对象的地址,利用它可以把一个变量的地址任务总结分析:教师带着任务总结分析:教师带着学生分析指针的功能,定义与引用。举例:inta=5,*p,*q;p=&a;scanf((〃%d〃,&a);和scanf("%d〃,p)是等价的。.通过指针变量获得地址值可以通过赋值运算,把一个指针变量中的地址值赋给另一个指针变量,从而使这两个指针变量指向同一地址。例如,假设有上面的定义,那么语句:q二p;使指针变量q中也存放了变量a的地址,也就是说指针变量p和q都指向了整型变量a。注意:赋值号两边指针变量的基类型必须相同。.给指针变量赋“空”值:p=NULL;NULL是在stdio.h头文件中定义的预定义符,因此在使用NULL时,应该在程序的前面出现预定义行:#include"stdio.h"。指针变量的引用&、*运算符。注意是用在指针变量上的,不是“位与”,“乘”运算符。&运算符(取地址运算符):表示取变量的地址。*运算符(指针运算符、间接访问运算符):访问指针变量指向的变量的值。任务实施#include"stdio.h"main(){inta,b,*pl,*p2,p;printf("请输入a和b:\nH);scanf(n%d,%dH,&a,&b);pl=&a;p2=&b;if(a<b){p=*pl;*pl=*p2;*p2=p;}printf(n\na=%d,b=%d\n'\a,b);printf("指针lmax=%d,指针2min=%d\nn,*pl,*p2);新课讲解2【约35分钟】新课讲解2【约35分钟】思路指导:教师引导学生思考函数的参数。提问学生:函数参数的传递形式?教师讲解指针作为函数参数的地址传递(二)工作任务二:三个数排序一一指针变量作为函数的参数【35分钟】讲解步骤:.用函数编写三个数排序程序。.用变量名作为函数参数传递.用指针作为函数参数传递•任务实施voidswap(int*pl,int*p2)(inttemp;temp=*p1;*p[=*p2;*p2=temp;/*exchange*p1,*p2*/main()教师通过上述讲解inta,b,c;int*pa,*pb,*pc;printf("请输入a,b,c:\iT);scanf(n%d%d%dn,&a,&b,&c);pa=&a;pb=&b;pc=&c;if(*pa>*pb)swap(pa,pb);if(*pb〉*pc)swap(pb,pc);if(*pa>*pc)swap(pa,pc);printf(nswaped:\nn);printf(”a=%d,b=%d,c=%d\n”,*pa,*pb,*pc);}•特别提示变量名作为参数是值传递,指针作为参数是地址传递。三.教学总结与作业布置•总结.嘉针的定义、引用?.指针作为函数参数?•作业提交方式:上传服务器板书设计知识回顾新

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论