内容正文:
课题
凯撒密码加密
课时
2课时(90 min)
教学目标
知识目标:
(1)理解文件及文件类型指针的概念、文件操作的顺序
(2)掌握打开和关闭文件的方法、读/写文件的基本操作方法
能力目标:
能够编写顺序读/写文件、随机读/写文件的程序
素质目标:
通过凯撒密码加密方法的学习,增强信息安全意识
教学重难点
教学重点:文件的基础知识,打开与关闭文件,文件读/写操作
教学难点:随机读/写文件
教学方法
问答法、讨论法、讲授法、实践法
教学用具
电脑、投影仪、多媒体课件、教材
教学过程
主要教学内容及步骤
课前任务
【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过文旌课堂APP或其他学习软件,完成课前任务
请同学们结合自己使用电脑的经验,总结文件打开、关闭、读写的操作方法。
【学生】完成课前任务
考勤
【教师】使用文旌课堂APP进行签到
【学生】班干部报请假人员及原因
问题导入
【教师】请同学们扫码观看“文件及文件操作的过程”视频(详见教材),讨论并回答以下问题:
在程序设计中,文件主要分为哪两种?文件的一般操作过程是怎样的?
【学生】思考、举手回答
传授新知
【教师】讲解文件的基础知识,打开与关闭文件,文件读/写操作
一、文件的基础知识
✈【教师】介绍文件的分类,C程序通过结构体类型FILE定义指针变量的形式
根据数据的组织形式不同,文件可分为ASCII文件(文本文件)和二进制文件两种类型。无论是哪种类型的文件,C程序系统都会将它看成是由一连串字符组成的字节序列,称为“流(stream)”,并以字节为单位访问,没有记录的界限。输入/输出字符流的开始和结束只由程序控制,而不受物理符号(如回车符)的控制,因此,这种文件被称作“流式文件”。将数据从磁盘文件流向内存的过程称为“输入”,反之,将数据从内存流向磁盘文件的过程称为“输出”。
C程序通过系统提供的结构体类型FILE定义的指针变量来访问文件。结构体类型FILE已在头文件“stdio.h”中定义,所以在对文件进行操作时,用FILE直接定义文件指针变量即可,其定义形式如下:
FILE *文件指针变量名;
其中,FILE必须大写,*表示定义的变量是指针类型。例如:
FILE *fp;
定义的fp是一个指向FILE类型数据的指针变量。可以使fp指向某一个文件的文件信息区,通过该文件信息区中的信息就可以访问该文件。
二、打开与关闭文件
✈【教师】多媒体观看“打开与关闭文件”视频(详见教材),让学生了解使用fopen( )函数、fclose( )函数打开和关闭文件的方法
除了标准的输入和输出文件外,其他所有的文件都必须先打开后使用,且使用后必须关闭该文件。库函数fopen( )和fclose( )分别用来打开和关闭文件。
【课堂问答】
✈【教师】随机邀请学生回答以下问题
请同学们思考,文件使用后不关闭会导致什么后果?
✈【学生】聆听、思考、回答
✈【教师】总结学生的回答
1.打开文件
调用fopen( )函数的一般形式如下。
fopen("文件名","文件操作方式表示符");
fopen( )函数的返回值是指向文件的指针(文件信息区的起始地址),通常将fopen( )函数的返回值赋给一个指向文件的指针变量。例如:
FILE *fp; /*定义一个指向文件的指针变量fp*/
fp=fopen("myfile","r"); /*以只读方式打开当前目录下的myfile文件*/
当调用函数时,系统会在缓冲区为文件开辟一个文件信息描述区,并将该文件信息描述区(文件结构体变量)的地址赋给指针fp,这样就可以通过fp对文件进行各种操作了。如果文件打开失败,则fopen( )函数返回空指针NULL。
✈高手点拨
当调用fopen( )函数打开文件时,文件名可包含文件路径。例如,“fp=fopen("c:\\documents\\myfile","w");”表示以写的方式打开c盘下documents文件夹中的myfile文件,并将返回值赋给指针变量fp。
当调用fopen( )函数打开文件时,须指定文件的操作方式,如“只读”“只写”等,具体的操作方式表示符见表8-2所列。
表8-2 文件操作方式表示符
文件操作方式
含 义
如果指定的文件不存在
只读“r”
(或“rb”)
打开一个文本文件(或二进制文件),只允许读数据
出错
只写“w”
(或“wb”)
打开或建立一个文本文件(或二进制文件),只允许写数据
建立新文件
追加“a”
(或“ab”)
打开一个文本文件(或二进制文件),并在文件末尾追加数据
出错
……(表格其他内容详见教材)
2.关闭文件
调用函数fclose( )的一般形式如下:
fclose(fp);