《C语言第部分》课件.ppt

上传人(卖家):晟晟文业 文档编号:5103172 上传时间:2023-02-11 格式:PPT 页数:19 大小:148.02KB
下载 相关 举报
《C语言第部分》课件.ppt_第1页
第1页 / 共19页
《C语言第部分》课件.ppt_第2页
第2页 / 共19页
《C语言第部分》课件.ppt_第3页
第3页 / 共19页
《C语言第部分》课件.ppt_第4页
第4页 / 共19页
《C语言第部分》课件.ppt_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、章要点上一页下一页退出第第8 8章章 文件系统文件系统章要点上一页下一页退出C语言程序设计语言程序设计 2学习目标与要求学习目标与要求1 1、理解文件、文件系统、文件指针的概念、理解文件、文件系统、文件指针的概念2 2、了解文件的分类情况,掌握文本文件与、了解文件的分类情况,掌握文本文件与二进制文件区别二进制文件区别3 3、掌握文件的打开和关闭的含义,会合理、掌握文件的打开和关闭的含义,会合理使用各种不同的打开方式使用各种不同的打开方式4 4、掌握使用字符读写函数、字符串读写函、掌握使用字符读写函数、字符串读写函数、数据块读写函数、格式读写函数、数、数据块读写函数、格式读写函数、和定位函数对文

2、件进行顺序或随机读写和定位函数对文件进行顺序或随机读写5 5、能编写对文件进行处理的实用程序、能编写对文件进行处理的实用程序章要点上一页下一页退出C语言程序设计语言程序设计 3本章要点本章要点1.1.文件系统概述文件系统概述 2.2.文件的打开与关闭文件的打开与关闭3.3.文件的读写文件的读写4.4.编程举例编程举例章要点上一页下一页退出C语言程序设计语言程序设计 48.1 8.1 文件系统概述文件系统概述一一文件与文件名文件与文件名 文件是指存放在外部存储介质上的数据集合。文件是指存放在外部存储介质上的数据集合。为标识一个文件,每个文件都必须有一个文件名,其一为标识一个文件,每个文件都必须有

3、一个文件名,其一般般 结构为:结构为:主文件名主文件名.扩展名扩展名 二二读文件与写文件读文件与写文件所谓读文件是指,将磁盘文件中的数据传送到计算机内所谓读文件是指,将磁盘文件中的数据传送到计算机内存的操作。存的操作。所谓写文件是指,从计算机内存向磁盘文件中传送数据所谓写文件是指,从计算机内存向磁盘文件中传送数据的操作。的操作。在程序运行时,程序本身和数据一般都存放在内存中。当程序运行结束后,存放在内存中的数据被释放。如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就必须以文件形式存储到外部存储介质上。章要点上一页下一页退出C语言程序设计语言程序设计 58.1 8.1 文件系统概

4、述文件系统概述三三文件类型文件类型FILE系统给每个打开的文件都在内存中开辟一个区域,系统给每个打开的文件都在内存中开辟一个区域,用于存放文件的有关信息(如文件名、文件位置等)。用于存放文件的有关信息(如文件名、文件位置等)。这些信息保存在一个结构体类型变量中,该结构体类型这些信息保存在一个结构体类型变量中,该结构体类型由系统定义、取名为由系统定义、取名为FILE。注意:结构体类型名注意:结构体类型名“FILE”必须大写。必须大写。在语言中用一个指针变量指向一个文件,这个指在语言中用一个指针变量指向一个文件,这个指针称为针称为文件指针文件指针。定义文件指针。格式如下:。定义文件指针。格式如下:

5、FILE*指针变量标识符;指针变量标识符;例如:例如:FILE *fp;表示表示fp是指向是指向FILE结构的指针变量,通过结构的指针变量,通过fp就可找就可找存放某个文件信息的结构变量。习惯上把存放某个文件信息的结构变量。习惯上把fp称为指向一称为指向一个文件的指针。个文件的指针。章要点上一页下一页退出C语言程序设计语言程序设计 68.2 8.2 文件的打开与关闭文件的打开与关闭对文件进行操作之前,必须先打开该文件;使用结对文件进行操作之前,必须先打开该文件;使用结束后,应立即关闭,以免数据丢失。束后,应立即关闭,以免数据丢失。语言规定了标准输入输出函数库,这些函数在头语言规定了标准输入输出

6、函数库,这些函数在头文件文件“stdio.h”中。用中。用fopen()函数打开一个文件,用函数打开一个文件,用fclose()函数关闭一个文件。函数关闭一个文件。一一文件的打开文件的打开fopen()函数函数 1用法:用法:FILE *fopen(文件名文件名,操作方式操作方式);2功能:返回一个指向指定文件的指针。功能:返回一个指向指定文件的指针。fp=fopen(a1,r);得到三个信息:得到三个信息:1)1)指要打开(或创建)的文件名指要打开(或创建)的文件名 2)2)使用文件的方式使用文件的方式 3)3)用哪一个指针变量指向被打开的文件用哪一个指针变量指向被打开的文件文文件件类类型型

7、 文文件件的的 使使用用方方式式(基基本本方方式式)含含义义 文文件件的的 使使用用方方式式(增增强强方方式式)含含义义 rt 或或r(只只读读)打打开开一一个个已已存存在在的的文文本本文文件件,只只允允许许读读数数据据,不不能能写写数数据据 rt+或或r+(读读写写)打打开开一一个个已已存存在在的的文文本本文文件件,既既可可以以读读取取数数据据,也也可可以以写写入入数数据据 wt 或或w(只只写写)建建立立一一个个新新的的文文本本文文件件,只只允允许许写写数数据据,不不能能读读数数据据。如如果果文文件件已已存存在在,则则覆覆盖盖该该文文件件。wt+或或w+(读读写写)建建立立一一个个新新的的

8、文文本本文文件件,准准备备读读写写数数据据。如如果果文文件件已已存存在在,则则覆覆盖盖该该文文件件。文文本本文文件件 at 或或a(追追加加)打打开开一一个个已已存存在在的的文文本本文文件件,并并在在文文件件末末尾尾写写入入数数据据,不不能能读读数数据据。如如果果文文件件不不存存在在,则则创创建建新新文文件件准准备备写写入入。at+或或a+(读读写写)打打开开一一个个已已存存在在的的文文本本文文件件,可可以以在在文文件件末末尾尾写写入入数数据据,或或者者读读数数据据。如如果果文文件件不不存存在在,则则可可以以创创建建新新文文件件。rb(只只读读)打打 开开 一一 个个 已已 存存 在在 的的

9、二二 进进 制制 文文 件件,只只允允 许许 读读 数数 据据,不不 能能 写写 数数 据据 rb+(读读 写写)打打 开开 一一 个个 已已 存存 在在 的的 二二 进进 制制 文文 件件,既既 可可以以 读读 取取 数数 据据,也也 可可 以以 写写 入入 数数 据据 wb(只只写写)建建 立立 一一 个个 新新 的的 二二 进进 制制 文文 件件,只只 允允 许许写写 数数 据据,不不 能能 读读 数数 据据。如如 果果 文文 件件 已已存存 在在,则则 覆覆 盖盖 该该 文文 件件。wb+(读读 写写)建建 立立 一一 个个 新新 的的 二二 进进 制制 文文 件件,准准 备备 读读

10、写写数数 据据。如如 果果 文文 件件 已已 存存 在在,则则 覆覆 盖盖 该该 文文件件。二二进进制制文文件件 ab(追追加加)打打开开一一个个已已存存在在的的二二进进制制文文件件,并并在在文文件件末末尾尾追追加加数数据据,不不能能读读数数据据。如如果果文文件件不不存存在在,则则创创建建新新文文件件准准备备写写入入。ab+(读读写写)打打开开一一个个已已存存在在的的二二进进制制文文件件,可可以以在在文文件件末末尾尾写写入入数数据据,或或者者读读数数据据。如如果果文文件件不不存存在在,则则可可以以创创建建新新文文件件。章要点上一页下一页退出C语言程序设计语言程序设计 8二二文件的关闭文件的关闭

11、fcolse()函数函数1)用法:用法:fclose(文件指针文件指针);2)功能:关闭功能:关闭“文件指针文件指针”所指向的文件。如果正常所指向的文件。如果正常关闭了文件,则函数返回值为;否则,返回值为非。关闭了文件,则函数返回值为;否则,返回值为非。例例 fclose(fp);3)说明说明(1)如果不能实现打开指定文件的操作,则)如果不能实现打开指定文件的操作,则fopen()函数返回一个空指针函数返回一个空指针NULL 为增强程序的可靠性,常用下面的方法打开一个文件:为增强程序的可靠性,常用下面的方法打开一个文件:if(fp=fopen(文件名文件名,操作方式操作方式)=NULL)pri

12、ntf(can not open this filen);exit(0);8.2 8.2 文件的打开与关闭文件的打开与关闭章要点上一页下一页退出C语言程序设计语言程序设计 98.3 8.3 文件的读写文件的读写读文件是将磁盘文件中的数据传送到计读文件是将磁盘文件中的数据传送到计算机内存的操作,写文件是从计算机内存向算机内存的操作,写文件是从计算机内存向磁盘文件传送数据的操作。磁盘文件传送数据的操作。文件的读写函数主要包括:文件的读写函数主要包括:v文件的字符读写函数文件的字符读写函数(fgetc和和fputc)v文件的字符串读写函数文件的字符串读写函数(fgets和和fputs)v文件的格式化

13、读写函数文件的格式化读写函数(fscanf和和fprinf)章要点上一页下一页退出C语言程序设计语言程序设计 10一一文件的字符读写文件的字符读写1将一个字符写到文件中将一个字符写到文件中fputc()函数函数 库函数库函数fputc()1)用法:用法:fputc(字符数据字符数据,文件指针文件指针);fputc(ch,fp);2)功能:将字符数据输出到功能:将字符数据输出到“文件指针文件指针”所指向的文所指向的文件中去,同时将读写位置指针向前移动件中去,同时将读写位置指针向前移动1个字节(即指个字节(即指向下一个写入位置)。向下一个写入位置)。注意:如果输出成功,则函数返回值就是输出的字符注

14、意:如果输出成功,则函数返回值就是输出的字符数据;否则,返回一个符号常量数据;否则,返回一个符号常量EOF(其值在头文件(其值在头文件stdio.h中,被定义为中,被定义为-1)。其中)。其中“字符数据字符数据”,既可以,既可以是字符常量,也可以是字符变量。是字符常量,也可以是字符变量。章要点上一页下一页退出C语言程序设计语言程序设计 112从文件中读入一个字符从文件中读入一个字符fgetc()函数和函数和feof()函数函数 库函数库函数fgetc()1)用法:)用法:fgetc(文件指针文件指针);fgetc(fp);2)功能:从)功能:从“文件指针文件指针”所指向的文件中,读入一所指向的

15、文件中,读入一个字符,同时将读写位置指针向前移动个字符,同时将读写位置指针向前移动1个字节(即指向个字节(即指向下一个字符)。该函数无出错返回值。下一个字符)。该函数无出错返回值。库函数库函数feof():1)用法:)用法:int feof(文件指针文件指针);2)功能:在执行读文件操作时,如果遇到文件尾,)功能:在执行读文件操作时,如果遇到文件尾,则函数返回逻辑真(则函数返回逻辑真(1);否则,则返回逻辑假();否则,则返回逻辑假(0)。)。例如,例如,(!feof(input)表示源文件(用于输入)未结表示源文件(用于输入)未结束,循环继续。束,循环继续。一一文件的字符读写文件的字符读写章

16、要点上一页下一页退出C语言程序设计语言程序设计 12例例8-1 从键盘输入一行字符,把它们显示在屏幕从键盘输入一行字符,把它们显示在屏幕上,同时写入当前目录下的上,同时写入当前目录下的“file1.txt”文件中。文件中。#include void main()FILE*fp;char ch;if(fp=fopen(file1.txt,w)=NULL)printf(nthis file not found or cant open!);getch();exit(0);printf(ninput a string:);while(ch=getchar()!=n)putchar(ch);fputc

17、(ch,fp);fclose(fp);程序运行情况:input a string:ChinaChina章要点上一页下一页退出C语言程序设计语言程序设计 13二二文件的字符串读写文件的字符串读写1.写字符串函数写字符串函数fputs原型如下:原型如下:int fputs(const char*s,FILE*fp);函数调用的形式为:函数调用的形式为:fputs(字符串,文件指针字符串,文件指针);例如:例如:fputs(“abcd”,fp);如果操作成功,函数的返回值就是最后写入如果操作成功,函数的返回值就是最后写入文件的字符值;否则返回文件的字符值;否则返回EOF(-1)。章要点上一页下一页退

18、出C语言程序设计语言程序设计 14文件的字符串读写文件的字符串读写2.读字符串函数读字符串函数fgets原型为:原型为:int*fgets(char*s,int n,FILE*fp);函数调用的形式为:函数调用的形式为:fgets(字符串起始地址字符串起始地址,n,文件指针文件指针);例如:例如:fgets(str,n,fp);如果读取正常,返回读取到的字符串的首地址如果读取正常,返回读取到的字符串的首地址s;如果读到文件尾或出错,则返回;如果读到文件尾或出错,则返回NULL章要点上一页下一页退出C语言程序设计语言程序设计 15三三文件的格式化读写文件的格式化读写1.fprinf函数函数原型:

19、原型:int fprinf(FILE*fp,const char*format,);调用的一般形式:调用的一般形式:fprintf(文件指针,格式字符串,输出表列文件指针,格式字符串,输出表列);如:如:fprintf(fp,“%d,%c”,a,ch);该函数功能是将表达式输出到该函数功能是将表达式输出到fp所指向文件所指向文件中,如果操作成功,则返回值就是写入到文件中,如果操作成功,则返回值就是写入到文件中数据的字节个数;如果操作出错,则返回中数据的字节个数;如果操作出错,则返回EOF章要点上一页下一页退出C语言程序设计语言程序设计 162.fscanf函数函数原型:原型:int fscan

20、f(FILE*fp,const char*format,);调用的一般形式为:调用的一般形式为:fscanf(文件指针,格式字符串,输入表列文件指针,格式字符串,输入表列);例如:例如:fscanf(fp,%d,%c,&a,&ch);该函数功能是从该函数功能是从fp所指向的文件中读取数据。所指向的文件中读取数据。如果操作成功,则函数返回值就是读取的数据项如果操作成功,则函数返回值就是读取的数据项的个数;如果操作出错或遇到文件尾,则返回的个数;如果操作出错或遇到文件尾,则返回EOF。三三文件的格式化读写文件的格式化读写章要点上一页下一页退出C语言程序设计语言程序设计 17四四编程举例编程举例例例

21、8-1例例8-2章要点上一页下一页退出C语言程序设计语言程序设计 18例例8-1 程序示例程序示例编写函数long gmval(int m)。函数功能:找出大于整数m且最靠近m的回文素数,函数返回该回文素数(如果一个素数从左向右读和从右向左读其值相等,则该素数被称为回文素数)。编写main 函数,从键盘输入整数m的值,调用gmval函数得到大于整数m且最靠近m的回文素数,将m和找到的回文素数输出至屏幕并且用写文件函数保存到结果文件my1.out中,源程序名为:8-1.c。测试数据:m=20000 章要点上一页下一页退出C语言程序设计语言程序设计 19例例8-2 程序示例程序示例编写函数int find(long n1,long n2,longx)。函数功能:在n1至n2之间查找满足以下条件的整数x:x是素数并且x2的各位数字各不相同。例如,11172=1247689,1117是素数并且11172的各位数字互不相同,因此1117是满足这一条件的整数。将找到的满足上述条件的整数依次保存在x指向的数组中,函数返回x数组中的数据个数。编写main函数,函数功能:声明一个long int型数组用于保存查找结果,调用find函数查找1000至1500之间满足上述条件的整数,将查找结果输出到屏幕并用写文件函数保存到结果文件my2.out中,源程序名为:8-2.c。

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(《C语言第部分》课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|