中职《C语言程序设计》教案第15课字符串纠错.docx

上传人:王** 文档编号:1170276 上传时间:2024-04-12 格式:DOCX 页数:4 大小:25.07KB
下载 相关 举报
中职《C语言程序设计》教案第15课字符串纠错.docx_第1页
第1页 / 共4页
中职《C语言程序设计》教案第15课字符串纠错.docx_第2页
第2页 / 共4页
中职《C语言程序设计》教案第15课字符串纠错.docx_第3页
第3页 / 共4页
中职《C语言程序设计》教案第15课字符串纠错.docx_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《中职《C语言程序设计》教案第15课字符串纠错.docx》由会员分享,可在线阅读,更多相关《中职《C语言程序设计》教案第15课字符串纠错.docx(4页珍藏版)》请在优知文库上搜索。

1、课题字符串纠错课时2课时(90min)教学目标知识目标:(1)掌握指针在数组中的使用方法(2)掌握指针在字符串中的使用方法能力目标:能在数组和字符串中灵活运用指针素质目标:通过学习指针在数组和字符串中的使用方法,培养学生学习知识要融会贯通教学重难点教学重点:指针与一维数组,指针与字符串,指针数组教学难点:通过指针引用字符串教学方法问答法、讨论法、讲授法教学用具电脑、投影仪、多媒体课件、教材教学过程主要教学内容及步骤课前任务【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过APP或其他学习软件,完成课前任务请同学们回顾之前字符相关知识,总结将大写字母转换成小写字母的方法。【学生】完成课

2、前任务考勤【教师】使用APP进行签到【学生】班干部报请假人员及原因问题导入【教师】请同学们扫码观看”字符串的表示方式“视频(详见教材),讨论并回答以下问题:字符串的表示方式有哪几种?字符数组与字符指针有何区别?【学生】思考、举手回答传授新知【教师】讲解指针与一维数组,指针与字符串,指针数组一、指针与一维数组【教师】多媒体观看“指针变量与一维数组”视频(详见教材),让学生了解如何定义指向数组的指针变量,数组中的指针运算,通过指针引用数组元素1 .定义指向数组的指针变量指针变量也可以指向数组中的元素。例如:inta5=l,2,3A5),*p;p=fca0;此处定义了一个一维数组a和一个指针变量P,

3、使指针变量P指向a的第1个元素。由于一维数组的数组名是一个地址常量,即a等价于&a0.因此,也可以通过数组名将数组的首地址赋给指针变量,即p=a;.2 .数组中的指针运算当指针指向数组元素时,可以对指针进行以下运算。(I)加减一个整数。对于指向数组的指针变量,可以加上或减去一个整数11.例如,P是指向数组ai的指针变量,则p+n、p-n、p+、+p、p-、一P都是合法的。指针变量加上或减去一个整数n的意义是将指针指向的当前位置向前或向后移动n个位置。(2)两指针变量相减。若两个指针变量指向同T组,则两个指针变量相减所得之差就是两个指针所指数组元素之间相差的元素个数。例如:inta5=1,2,3

4、,4,5,b,*p,*q;p=&a01;q=&a4;b=q-p;此例中,b的结果为4,即两个指针变量指向的元素下标之差。小提示(I)只有指向同T组的两个指针变量之间才能进行减法运算,否则毫无意义。(2)两个指针变量不能进行加法运算。3.通过指针引用数组元素通过指针引用数组元素的一般形式如下.*(a+i)或*(p+i)其中,a是数组名,p是指向数组元素的指针变量,且p指向数组a的第1个元素。指向数组的指针变量也可以带下标,如pi与*(p+i)是等价的。中高手点拨*(p+i)和ai相等的前提条件是P指向数组a的首地址。如果赋值p=&a|4|;,则P指向a4fp+1指向a5,而p-1指向a3【课堂练

5、习】【教师】出示【例7.2,组织学生答题分析程序运行结果,程序详见教材。【学生】聆听、思考、分析【教师】解析例题程序运行结果如图7-5所示(详见教材)。从程序运行结果中可以得出,*(P+i)、*(a+i)、pi和ai输出的结果都是相同的.二、指针与字符串【教师】多媒体观看“指针与字符串”视频(详见教材),让学生了解通过指针引用字符串及访问字符串元素的方法在指针操作字符串时,需要将字符串的首地址赋给一个指针,这样才能通过该指针引用字符串。例如:char*sir;/*定义指针变量sir*/str=Clanguage!;/*给变量str赋初值*/该语句等价于:char*str=Clanguage!;

6、/*初始化指针变量Str*/此例中,str被定义为一个字符指针,它指向字符串常量中的首字符C,如图7-6所示(详见教材)。可通过指针名Sir访问这一存储区域,如*市或Slr就是访问字符C,s制或*(str+i)就是访问字符串的第i+个元素.【课堂问答】【教师】随机邀请学生回答以下问题请同学们思考,如果字符串中只有5个元素,那么上述访问su5会导致什么结果?* 【学生】聆听、思考、回答【教师】总结学生的回答【课堂练习】【教师】出示【例7-3,组织学生编写代码利用指针将两个字符串连接起来。* 【学生】编写程序、运行、对比结果* 【教师】解析例翘本题可以先定义两个指针变量strl和str2,分别指向

7、两个字符串;然后移动指针Strl到第1个字符串的结束符处;最后将第2个字符串连接到第1个字符串的后面。(参考程序详见教材)【运行结果】程序运行结果如图7-7所示(详见教材)。【课堂讨论】* 【教师】请学生分组讨论以下问题请同学们以小组为单位,讨论字符指针与字符数组有什么区别.【学生】讨论、总结、回答* 【教师】总结学生的回答少高手点拨字符指针与字符数组之间是有区别的。例如,有以下语句:char*str=Clanguage!;charstring30=Thisisastring.;str是一个字符指针,可以改变str使它指向不同的字符串,但不能改变str所指向的字符串常量的值。String是f字

8、符数组,可以改变数组中保存的内容。三、指针数组【教师】介绍定义一维指针数组的语法格式如果数组中的每个元素均为指针类型,则称该数组为指针数组。定义一维指针数组的一般形式如下。类型标识符*数组名常量表达式;例如:char*p5;表示定义一个由5个指针变量构成的指针数组,数组中的每个数组元素都是一个指向字符型数值的指针变量。【课堂讨论】【教师】请学生分组讨论以下问题请同学们以小组为单位,讨论数组指针和指针数组是否相同,不相同的话,其各自表示什么含义?【学生】讨论、总结、回答【教师】总结学生的回答小提示数组指针和指针数组这两个词语很容易混淆。数组指针是一个指针变量,它指向的是某类型的数组,如char(

9、*p)5;;而指针数组的本质是一个由若干个指针变量组成的数组,数组中每个元素都是一个指针变量,如char*p。四、任务实施*【教师】多媒体观看“字符串纠错”视频(详见教材),让学生了解该任务的具体要求,程序设计思路,具体代码实现方法1.任务分析将字符串中的大写字母转换成小写字母,须首先定义一个指针变量指向该字符串;然后从第2个元素开始逐个判断该字符是否为大写字母,若是,则需要转换成相应的小写字母;再利用指针判断下一个字符,直到遇到字符0;.(详见教材)3.运行结果程序运行结果如图7-8所示(详见教材)【课堂问答】【教师】随机邀请学生回答以下问题请同学们思考,上述循环中,循环变量i从1开始,能否

10、从O开始,为什么?【学生】聆听、思考、回答【教师】总结学生的回答【学生】聆听、思考、理解、记录课堂实训【教师】介绍课堂实训要求,以及实训内容,要求学生按照实训要求完成实训任务请同学们按照任务实施中字符串纠错的程序设计思路和步骤进行练习。定义指针变量P,初始化字符串,定义整型变量i,用于存储循环次数,指针P指向字符串String,循环判断字符串中的字符,判断*(p+i)是否为大写字母,若成立,则将*(p+i)转换砌与字母,最后输出字符串string,运行程序,根据运行结构,验证程序的正确性。【学生】按照要求进行操作,完成后总结自己哪些地方做得很好,还有哪些地方需要改进课堂小结【教师】简要总结本节课的要点本次课介绍了如何定义指向数组的指针变量,可以通过数组名将数组的首地址赋给指针变量,或者使指针变量指向数组的第I个元素.介绍了数组中的指针运算,可以口减一个整数,可以两指针变量相减。讲解了通过指针引用数组元素,一般形式为*(a+i)或*(p+i)0讲解了指针与字符串,将字符串的首地址赋给一个指针,即可通过该指针引用字符串。让学生了解了指针数组,及其基本形式。最后通过任务实施,综合运用本次课知识,完成了字符串纠错的代码实现。【学生】总结回顾知识点作业布置【教师】布置课后作业请根据本课内容,完成课后习题中的相关习题.【学生】完成课后任务教学反思

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!