C语言文件中数据的访问与存储

上传人:宝路 文档编号:48219434 上传时间:2018-07-11 格式:PPT 页数:54 大小:407.63KB
返回 下载 相关 举报
C语言文件中数据的访问与存储_第1页
第1页 / 共54页
C语言文件中数据的访问与存储_第2页
第2页 / 共54页
C语言文件中数据的访问与存储_第3页
第3页 / 共54页
C语言文件中数据的访问与存储_第4页
第4页 / 共54页
C语言文件中数据的访问与存储_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《C语言文件中数据的访问与存储》由会员分享,可在线阅读,更多相关《C语言文件中数据的访问与存储(54页珍藏版)》请在金锄头文库上搜索。

1、第6章文件中数据的访问与存储6.1文件的概念和分类 6.2文件中数据的读写步骤6.3文本文件中数据的读写操作P1916.1文件的概念和分类P192文件是存储在外部介质上数据的集合。文件是存储在外部介质上数据的集合。 存储在磁盘上的文件称为磁盘文件。存储在磁盘上的文件称为磁盘文件。返回6.1文件的概念和分类P192按文件的内容分:按文件的内容分:程序文件和数据文件程序文件和数据文件 按文件中数据的组织形式分:按文件中数据的组织形式分:文本文件和二进制文件文本文件和二进制文件返回6.1文件的概念和分类P192如果要访问文件中的数据或向文件中如果要访问文件中的数据或向文件中 存储数据,都要以文件名为

2、标识。存储数据,都要以文件名为标识。 仅介绍文本文件中数据的读写方法。仅介绍文本文件中数据的读写方法。返回6.2文件中数据的读写步骤P192(1 1)打开文件)打开文件 无论对文件进行读还是写操作,都需要先无论对文件进行读还是写操作,都需要先 打开文件,打开文件用打开文件,打开文件用fopenfopen函数。函数。 (2 2)读写文件)读写文件 写就是将内存中的数据存到文件中去。写就是将内存中的数据存到文件中去。 主要介绍主要介绍fscanffscanf和和fprintffprintf函数。函数。 (3 3)关闭文件)关闭文件 当文件不再使用时,需将其关闭。关闭文当文件不再使用时,需将其关闭。

3、关闭文 件用件用fclosefclose函数。函数。返回6.3.16.3.1向文本文件中写数据向文本文件中写数据6.3.26.3.2从已有的文本文件中读数据从已有的文本文件中读数据6.3.36.3.3文本文件中对数据的读写操作文本文件中对数据的读写操作6.3文本文件中数据的读写操作P192返回6.3.1向文本文件中写数据P192永久性地存放数据,如存储测量永久性地存放数据,如存储测量 数据结果、学生成绩存档等,在数据结果、学生成绩存档等,在C C 语言中用文件。可以用语言中用文件。可以用fprintffprintf函函 数向文本文件中写数据。数向文本文件中写数据。问问 题题 的的 提提 出出【

4、实例实例6-16-1】改写实例改写实例1-11-1。编写。编写 程序,将如图程序,将如图1.21.2所示的问候语写所示的问候语写 到到d d盘下盘下c c文件夹中的文件夹中的“ “f1.txt”f1.txt”文文 件中。件中。任任 务务 与与 分分 析析6.3.1向文本文件中写数据P192操作步骤操作步骤 #include main() 定义文件指针fp打开(或建立)d盘c文件夹中的“f1.txt”文件将问候语写入“f1.txt”文件关闭文件 FILE *fp; fp=fopen(“d:cf1.txt“,“w“); fprintf(fp,“n“); fprintf(fp,“n“); fprin

5、tf(fp,“n“); fprintf(fp,“n“); fprintf(fp,“n“); fprintf(fp,“n“); fprintf(fp,“n“); fclose(fp);【实例实例6-26-2】编写程序,用人机对编写程序,用人机对 话的形式随机产生话的形式随机产生3 3道道100100以内加以内加 法题,并将题目和用户输入的答案法题,并将题目和用户输入的答案 写到写到d d盘盘c c文件夹中的文件夹中的“ “f2.txt”f2.txt”文文 件中。件中。P194操作步骤操作步骤#include #include #include main() 定义整型变量a、b、c和i定义文件指针

6、fpint a,b,c,i; FILE *fp;操作步骤操作步骤打开d盘c文件夹中的“f2.txt”文件随机产生三个题目fp=fopen(“d:cf2.txt“,“w“); if(fp=NULL) printf(“Can not open the file.n“); exit(0); srand(time(0); for(i=1; i #include struct list 定义存放中文单词的成员定义存放英文单词的成员 ; main() 定义名为list的结构体类型数组a并初始化定义循环变量i 定义文件指针fp打开当前文件夹中的“f3.txt”文件将结构体数组a中的数据写入“f3.txt”文

7、件关闭文件 char cn10; char en10;既清晰又易读取操作步骤操作步骤 #include #include struct list 定义存放中文单词的成员定义存放英文单词的成员 ; main() 定义名为list的结构体类型数组a并初始化定义循环变量i 定义文件指针fp打开当前文件夹中的“f3.txt”文件将结构体数组a中的数据写入“f3.txt”文件关闭文件 main() struct list a5= “中国“,“China“,“女孩“,“girl“,“男孩“,“boy“,“人“,“man“,“一“,“one“;int i; FILE *fp;fp=fopen(“f3.txt

8、“,“w“);if(fp=NULL) printf(“Can not open the file.n“); exit(0);for(i=0; i struct list 定义存放中文单词的成员定义存放英文单词的成员 ; main() 定义名为list的结构体类型变量w定义文件指针fp打开当前文件夹中的“f3.txt”文件输入要添加的单词将添加的单词写入“f3.txt”文件关闭文件 char cn10; char en10;struct list w; FILE *fp;gets(); gets(w.en); fprintf(fp,“%15s%15sn“,,w.en) ;fp=fopen(“f3

9、.txt“,“a“); if(fp=NULL) fclose(fp);打开文件的一般形式:打开文件的一般形式:文件指针名文件指针名=fopenfopen(“(“文件名文件名“,“,“打开方式打开方式“);“);归归 纳纳 分分 析析打 开方 式功 能 文本 二进进制 “r“rb“仅为读仅为读 打开已有文件 “w“wb“仅为仅为 写打开 “a“ab“为为追加打开判断文件打开是否成功:判断文件打开是否成功: if(if(文件指针名文件指针名=NULL)=NULL) printf(“Canprintf(“Can not open the not open the file.n“); file.n“)

10、; exit(0); exit(0); 归归 纳纳 分分 析析 关闭文件的一般形式:关闭文件的一般形式:fclosefclose( (文件指针文件指针);); fprintffprintf函数的一般形式:函数的一般形式:fprintffprintf( (文件指针名文件指针名,“,“一串字符一串字符“);“); 或或fprintffprintf( (文件指针名文件指针名,“,“格式控制字符串格式控制字符串“,“,输出项表输出项表););归归 纳纳 分分 析析动动 手手 练练 习习6-16-1编写程序,从键盘输入编写程序,从键盘输入3 3个学生的个学生的 信息(包括学号,姓名,性别,信息(包括学号

11、,姓名,性别, 成绩),并存入成绩),并存入d d盘盘c c文件夹中的文件夹中的 “ “stu.txtstu.txt” ”文件中。文件中。P200编写程序,向练习编写程序,向练习6-16-1中已建立中已建立 的的“ “stu.txtstu.txt” ”文件中添加文件中添加2 2个新的个新的 学生信息,信息从键盘输入。学生信息,信息从键盘输入。6-26-26.3.2从已有的文本 文件中读数据P200在日常生活中经常需要访问已有在日常生活中经常需要访问已有 文件中的数据做相应处理,如分文件中的数据做相应处理,如分 析测量数据、统计学生成绩等。析测量数据、统计学生成绩等。 在在C C语言中可以用语言

12、中可以用fscanffscanf函数从函数从 文本文件中读取数据。文本文件中读取数据。问问 题题 的的 提提 出出【实例实例6-56-5】编写程序,从实例编写程序,从实例6-6- 2 2建立的文件建立的文件“ “f2.txt”f2.txt”中读取所有中读取所有 题目和答案,并显示在屏幕上。题目和答案,并显示在屏幕上。任任 务务 与与 分分 析析6.3.2从已有的文本 文件中读数据P200操作步骤操作步骤#include #include main() 定义整型变量a、b、c、k和i定义文件指针fp打开d盘c文件夹中的“f2.txt”文件从“f2.txt”文件中读取题目和答案将题目和答案显示在屏

13、幕上关闭文件 int a,b,c,k,i; FILE *fp;if(fp=NULL) fp=fopen(“d:cf2.txt“,“r“); for(i=1; i #include struct list 定义存放中文单词的成员定义存放英文单词的成员 ; char cn10; char en10;操作步骤操作步骤main() 定义循环变量i定义名为list的结构体类型变量w定义文件指针fp打开d盘c文件夹中的“f3.txt”文件从“f3.txt”文件中读取单词将单词显示在屏幕上关闭文件 int i; struct list w; FILE *fp;if(fp=NULL) fp=fopen(“d:

14、cf3.txt“,“r“); for(i=1; i #include #include struct list 定义存放中文单词的成员定义存放英文单词的成员 ; char cn10; char en10;操作步骤操作步骤main() 定义名为list的结构体类型变量w定义文件指针fp定义标志变量s.flag定义字符串变量str打开d盘c文件夹中的“f3.txt”文件struct list w; FILE *fp; int s,flag=0; char str20; fp=fopen(“d:cf3.txt“,“r“); if(fp=NULL) printf(“Can not open the f

15、ile.n“); exit(0); 操作步骤操作步骤选择是英汉还是汉英? 输入待查找的单词printf(“请选择:n英汉-1n汉英- 2n“); scanf(“%d“, if(s=1) printf(“请输入要查找的英文单词:n“);scanf(“%s“,str); else if(s=2) printf(“请输入要查找的中文:n“);scanf(“%s“,str); 操作步骤操作步骤在“f3.txt”文件中查找对应单词输出查找结果while(feof(fp)=0) fscanf(fp,“%15s%15sn“,,w.en);if(s=1 printf(“%s: %sn“,w.en,);break;if(s=2 printf(“%s: %sn“,,w.en);break; if(flag=0)printf(“没有查找到对应的单词“);操作步骤操作步骤关闭文件 fclose(fp); 【实例实例6-86-8】用用WindowsWindows中的记中的记 事本建立事本建立2 2个文件个文件“ “f4.txt”f4.txt”和和 “ “f5.txt”f5.txt”,并编写程序并编写程序,将文件将文件 “ “f5.txt”f5.txt”中的数据合并到中的数据合并到

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号