C程序设计 第10章 文 件 主讲教师: 鲁 萍 西安建筑科技大学 理学院.

Slides:



Advertisements
Similar presentations
猜谜语 有个小娃娃,真是没 礼貌。 见到小树摇一摇,吓 得树叶哇哇叫。 见到小花逗一逗,摘 去她的太阳帽。 没人和它交朋友,只 好自已到外处跑。
Advertisements

黄帝内经 内经教研室 王黎.
职官与科举 职官:在国家机构中担任一定职务的官吏,这里面有职官的名称、职权范围和品级地位等方面的内容。
花开有日 芬芳天下 “国培计划(2012)” ——幼儿园骨干教师远程培训项目 山东幼儿园教师8班第4期简报 主办人:张瑞美     
《卖火柴的小女孩》 《海的女儿》 你 认 识 这 些 图 片 的 故 事 吗 《丑小鸭》 《拇指姑娘》 它们都来自于哪位作家笔下?
电子成绩单项目实现.
我征服了黃山 林達的黃山之旅 2006春.
民主國家的政府體制 我國的中央政府體制 我國中央政府的功能 地方政府組織與功能
銷售與顧客關係管理 巫立宇.邱志聖 著.
四資二甲 第三週作業 物件導向程式設計.
20、豆花庄的小家伙们.
CH11 心理疾病 李志鴻.
项目五——校园一卡通程序功能模块化设计 5-1项目显示查询和退出函数设计.
华 夏 之 祖 第 3 课.
法學緒論第六單元:法律適用 設計課程︰ 財經法律系 --楊東連 法學緒論-6.
CH1 . 集 合 与 命 题.
補充: Input from a text file
基于操作系统的编程复习 张玉宏
雷 霆 战 机 By—谷恩轩&余万全.
Ch19 創業精神 管理學:整合觀點與創新思維3/e.中山大學企管系 著.前程文化 出版.
以考试说明带动二轮复习 福州第三中学 张璐.
第十三章 文件.
跨越海峡的生命桥.
複習 struct score_Type{ int chinese,english; }; struct my_Type{
C File System.
C 程序设计实例 1. 问题描述 2. 数据结构 3. 算法分析 4. 参考程序 5. 改进说明.
计算概论 第二十一讲 文件操作 北京大学信息学院.
第10章 文件操作.
第十一章 文件 文件概述 文件操作 文件操作实例 本章小结 作业: 练习:
程序讲解 第一题: 将指定文件的m行到n行字符写到显示屏上,m和n值从键盘输入。 运行时输入及结果: please enter m,n:
第10章 文件操作.
C 程式設計— 檔案處理 台大資訊工程學系 資訊系統訓練班.
C 語言簡介 - 2.
11.1 文件的基本概念 11.2 文件的打开与关闭 11.3 文件的顺序读写 11.4 文件的随机读写 11.5 文件检测
第9章 C++的文件操作 “文件”,一般是指内存以外的存储介质上一批数据的集合。C++在语言层次上提供了文件操作的一系列函数用于完成文件的操作,打开、关闭文件,读取、写入文件数据等操作。 1。字符文件与二进制文件 字符文件:又称ASCII文件或文本TEXT文件,它是以一个字节存放一个ASCII码,代表一个字符。例如,32767需要使用5个字节表示,即:
第十二章 文件 12.1 C文件概述 文件:存储在外部介质上数据的集合,是操作系统数据管理的单位 文件分类 按文件的逻辑结构: 按存储介质:
6.4.1指针与二维数组 1、二维数组结构的分析 设有数组定义为:int a[3][4]; 则有: a表示数组在内存中的首地址。
1. 說明一個一維整數陣列passwd,下標範圍0至49 2. 在屏幕顯示 "Enter password"
第3章 栈和队列(一).
fp=fopen("CD2.dat","wb"); fwrite(&min,8,1,fp); fclose(fp);
檔案 將資料存入磁碟或由磁碟取出資料的方式, 稱為檔案存取處理。 C語言的檔案處理 C++語言的檔案處理.
程式設計 博碩文化出版發行.
第九章 文件 程序数据标准输入输出设备 程序数据文件 数据流和文件 文件的打开和关闭 文件读写函数.
File(檔案處理) 學習目標:開檔、讀檔、更新檔與關閉檔案.
THE C PROGRAMMING LANGUAGE
第10章 檔案與資料夾處理 10-1 C語言的檔案輸入與輸出 10-2 文字檔案的讀寫 10-3 二進位檔案的讀寫
Linux 文件操作——系统调用和标准 IO 库
第九章 C++的I/O流库 9.1 流 9.2 磁盘文件 9.3 程序举例.
第5章 文件.
第9章 文件操作 文件 使用文件的目的 操作系统管理数据的基本单位 存储在外存储器上的数据的集合
2.1 C语言的数据类型 2.2 常量与变量 2.3 变量赋初值 2.4 各类数值型数据间的混合运算 2.5 C语言的运算符和表达式
第5讲 结构化程序设计(Part II) 周水庚 2018年10月11日.
研讨课4 文件操作.
PHP5與MySQL4 入門學習指南 凱文瑞克 著 第 16 章 檔案處理.
一、文件的基本概念 第十三章 文 件 所谓“文件”是指一组相关数据的有序集合。 这个数据集有一
實習十 開讀檔練習.
C標準輸出入函數庫 與 作業系統.
Inheritance -II.
本节内容 文件读写 视频提供:昆山爱达人信息技术有限公司.
陣列 東海大學物理系‧資訊教育 施奇廷.
第二章 基本数据类型 ——数据的表示.
第3章 最简单的C程序设计 3.1 顺序程序设计举例 3.2 数据的表现形式及其运算 3.3 C语句 3.4 数据的输入输出.
第13章 文 件.
Introduction to the C Programming Language
第七章  数 组.
C 程式設計— 檔案處理 台大資訊工程學系 資訊系統訓練班.
結構、檔案處理(Structure, File)
第七章 文件 7.1 文件的基本概念 7.2 文件类型指针 7.3 文件的打开与关闭 7.4 文件的读/写 7.5 文件的随机读/写
C语言程序设计 第13章 文件操作.
陣列與檔案處理 授課:張朝麟 日期:2009/3/11.
Presentation transcript:

C程序设计 第10章 文 件 主讲教师: 鲁 萍 西安建筑科技大学 理学院

任务 A1001. 键盘输入字符串,保存在文件中,以#结束 A1002. 读取文件,在屏幕上显示内容 小 结 习 题

文件举例1 A1001: 键盘输入字符串,保存在文件中,以#结束 void main() { FILE *fp; char ch,filename[10]; printf("input filename:"); gets(filename); fp=fopen(filename,"w"); if (fp==NULL) { printf("cannot open file\n"); exit(0);} printf("input string:"); ch=getchar(); while(ch!='#') { fputc(ch,fp); } fclose(fp); 打开文件 键盘输入并保存在文件中 关闭文件

打开文件 A1001. 键盘输入字符串,保存在文件中,以#结束 void main() { FILE *fp; char ch,filename[10]; printf("input filename:"); gets(filename); fp=fopen(filename,"w"); if (fp==NULL) { printf("cannot open file\n"); exit(0); /*结束程序*/ } 文件类指针变量:用FILE定义 例:FILE *fp1,*fp2; 是一个指向结构体的指针变量,描述文件的有关信息。 建立/打开文件 fopen(文件名, 打开方式) 说明:操作成功返回一个指向文件的指针,否则返回NULL 例:FILE *fp; fp=fopen(“text.txt”,”rt”); 以只读方式打开 未成功打开文件,结束程序

写入文件、关闭文件 A1001. 键盘输入字符串,保存在文件中,以#结束 void main() { ….. { ….. printf("input string:"); ch=getchar(); while(ch!='#') { fputc(ch,fp); } fclose(fp); 向文件写入单个字符 int fputc(char ch, FILE *fp) 将字符ch写入文件指针fp所指向的文件中。 关闭文件 fclose(文件指针变量) (1) 将系统读写缓冲区中的数据写入文件,保证数据不丢失 (2) 将文件指针与文件切断联系 #会写入文件吗?

文件举例2 A1002. 读取文件,在屏幕上显示内容 void main() { FILE *fp; char ch,filename[10]; printf("filename:"); gets(filename); fp=fopen(filename,"r"); if (fp==NULL) { printf("cannot open file\n"); exit(0);} ch=fgetc(fp); while(ch!=EOF) { printf("%c",ch); ch=fgetc(fp); } fclose(fp); } 打开文件 读取文件内容并显示 关闭文件

读取文件 A1002. 读取文件,在屏幕上显示内容 void main() { ….. ch=fgetc(fp); 从文件中读取单个字符 { ….. ch=fgetc(fp); while(ch!=EOF) { printf("%c",ch); } 从文件中读取单个字符 int fgetc(FILE *fp) 从fp所指向的文件中读出单个字符,操作成功返回读出的字符本身,否则返回0 例:字符变量=fgetc(fp): EOF 文件读取结束标志

文件举例3 练习: 读取文本文件,统计字母a出现的频率 打开文件 ch=fgetc(fp); while(ch!=EOF) void main() { FILE *fp; char ch,filename[10]; printf("filename:"); gets(filename); fp=fopen(filename,"r"); if (fp==NULL) { printf("cannot open file\n"); exit(0);} ch=fgetc(fp); while(ch!=EOF) { printf("%c",ch); } fclose(fp); 打开文件 读取文件内容并显示 关闭文件 if ((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')) { num++; switch(ch){ case 'a': case 'A': a_count++; }; } f=(float)a_count/num;

文件分类 文本方式 二进制方式 按文件中数据的组织形式分: 1)文本文件:每个字符占一个字节(ASCII码)可读性好。 2)二进制文件:以数据的二进制表示形式直接存储。二进制文件占用存储空间较文本文件小,且存取速度快,通常用于数据存储。 例:数据4567 文本方式 00110100 00110101 00110110 00110111 二进制方式 00010001 11010111

文件举例4 A1003.整形数组存二进制文件 保存在文件中 #define N 5 void main() { FILE *fp; int a[N]={1,2,3,4,5}; fp=fopen("data","wb"); if (fp==NULL) { printf("cannot open file\n"); exit(0);} fwrite(a,sizeof(int),N,fp); fclose(fp); } 以块方式写数据 fwrite(buf, size, n, fp) buf:输出数据的首地址 size,读写的字节数 n,读写n个size字节 fp,写入的文件指针 将地址为buf中的n*size字节中的数据写入文件指针变量fp所指向的文件中。

文件举例5 A1004 读取文件中的数组数据,对数组求和 #define N 5 void main() { FILE *fp; int b[N],i,sum=0; fp=fopen("data","rb+"); if (fp==NULL) { printf("cannot open file\n"); exit(0);} fread(b,sizeof(int),N,fp); fclose(fp); for(i=0;i<N;i++) sum+=b[i]; printf("%4d",sum); } 以块方式读数据 fread(buf, size, n, fp) buf:输出数据的首地址 size,读写的字节数 n,读写n个size字节 fp,写入的文件指针 将fp指向的文件中n*size字节中的数据写入地址为buf的内存中

小结 文本文件 二进制文件 定义文件指针 打开文件 读取文件 写文件 关闭文件 FILE *fp 文本文件 二进制文件 定义文件指针 打开文件 读取文件 写文件 关闭文件 FILE *fp fp=fopen(filename,"w") ch=fgetc(fp); fputc(ch,fp); fclose(fp); fread(b,sizeof(int),N,fp) fwrite(a,sizeof(int),N,fp)

习题 B1001 统计一个文本本件中单词个数(测试文件file.txt)