- 0
- 0
- 约5.69千字
- 约 45页
- 2019-12-02 发布于湖北
- 举报
C语言程序设计
第10章利用文件保存数据;C语言执行程序;文件的基本概念;文件的类别;文件的类别;;文件处理方法
缓冲文件系统:系统自动为正在使用的文件开辟内存缓冲区;文件指针;文件类型指针
;文件类型指针
定义指向文件型数据的指针变量: FILE *fp;;文件的打开、读写和关闭 ;打开文件方式mode由两类字符构成:
① 一类字符表示打开文件的类型
t-----表示文本文件(text,默认方式),
b----表示二进制文件(binary),
② 另一类字符是操作类型
r----表示从文件中读取数据(read),
w----表示向文件写入数据(write),
a----表示在文件尾追加数据(append),
+----表示文件可读可写。 ;关闭文件函数fclose;在顺序写时,先写入的数据存放在文件中前面,后写入的数据存放在文件中后面
在顺序读时,先读文件中前面的数据,后读文件中后面的数据
对顺序读写来说,对文件读写数据的顺序和数据在文件中的物理顺序是一致的
;2、文件的顺序读写 ; 字符写函数fputc;知识点回顾;【例10.1】从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个“#”为止
解题思路:
1、用getchar函数从键盘逐个输入字符。
2、然后用fputc函数写到磁盘file1.dat文件。
3、输入一个字符写一个字符,反复循环,直到满足条件。
while()的条件为字符!=‘#’; if((fp=fopen(filename,w))==NULL) // 打开输出文件使fp指向此文件
{
printf(无法打开此文件\n); // 如果打开时出错,就输出打不开的信息
exit(0); // 终止程序*/
}
ch=getchar( ); // 接收在执行scanf语句时最后输入的回车符
printf(请输入一个字符串(以#结束):);
ch=getchar( ); // 接收从键盘输入的第一个字符
while(ch!=#) // 当输入#时结束循环
{
fputc(ch,fp); // 向磁盘文件输出一个字符
putchar(ch); // 将输出的字符显示在屏幕上
ch=getchar(); // 再接收从键盘输入的一个字符
}
fclose(fp); // 关闭文件
putchar(10); // 输出换行,ascii为10
exit
};例10.2 将一个磁盘文件中的信息复制到另一个磁盘
文件中。 今要求将上例建立的file1.dat文件中的内
容复制到另一个磁盘文件file2.dat中。
解题思路:
处理此问题的算法是:从file1.dat文件中逐个读入
字符,然后逐个输出到file2.dat中。
fgetc()读取,fputc()输出;#include stdio.h
#include stdlib.h
void main( )
{ FILE *in,*out;
char ch,infile[10],outfile[10];
printf(输入读入文件的名字:);
scanf(%s,infile); file1.dat
printf(输入输出文件的名字:);
scanf(“%s”,outfile); file2.dat
if((in=fopen(infile,“r”))==NULL)
{printf(无法打开此文件\n); exit(0);}
; if((out=fopen(outfile,w))==NULL) // 打开输出文件
{printf(无法打开此文件\n);
exit(0); }
while(!feof(in)) // 如果未遇到输入文件的结束标
您可能关注的文档
- chapter1电路的基本概念和基本定律.ppt
- chapter21触发器和时序逻辑电路(电工电子技术).ppt
- Chapter 9 常见HPLC问题的故障排除_1.ppt
- chapter1提高采收率原理.ppt
- chapter4 环路噪声性能 电子科技大学(经典).ppt
- chapter22 触发器和时序逻辑电路.ppt
- chapter22触发器和时序逻辑电路.ppt
- Chapter1-3(电磁场边值关系-电磁场的能量和能流).ppt
- chapter2电路的分析方法.ppt
- Chapter5 材料加工过程的计算机控制.ppt
- 山西天一大联考2025-2026学年高二上学期期末学情监测语文试题(试卷+解析).docx
- 山西忻州部分学校2025-2026学年高一上学期2月质量检测数学试题(人教B版)(试卷+解析).docx
- 山西运城市2025-2026学年高二第一学期期末调研测试数学试题(试卷+解析).docx
- 陕西省榆林市榆阳区2025-2026学年八年级上学期期末地理试题(试卷+解析).docx
- 陕西西安市碑林区2025-2026学年度第一学期期末八年级生物试题(试卷+解析).docx
- 四川省广元市苍溪县2025-2026年八年级上学期期末道德与法治试题(试卷+解析).docx
- 江苏泰州市姜堰区2025-2026学年七年级上学期1月期末数学试题(试卷+解析).docx
- 江苏省扬州市邗江区2025-2026学年九年级上学期期末考试化学试题(试卷+解析).docx
- 江西上饶市铅山县2025-2026学年第一学期期末考试八年级数学试题(试卷+解析).docx
- 江苏扬州市高邮市2025-2026学年度第一学期期末学业质量监测试题九年级英语(试卷+解析).docx
最近下载
- 慢慢喜欢你(文武贝版)钢琴谱钢琴简谱 数字谱 钢琴双手简谱.pdf VIP
- 2023年高考数学二轮复习复习备考策略讲座.pptx VIP
- 海上大气波导预测方法的探索与实践:模型构建与精度提升.docx VIP
- APEX GC手持拧紧枪使用与维护.pptx VIP
- 农药残留毒检测仪控制系统的硬.pdf VIP
- 现浇路缘石施工方案.doc VIP
- 期权合同(企业员工期权激励协议范本).docx VIP
- 农药残留毒性检测仪控制系统的硬件设计.pdf VIP
- (正式版)H-Y-T 0273-2019 海洋灾害风险评估和区划技术导则 第1部分:风暴潮(正式版).docx VIP
- 电动汽车无线充电系统设计.docx VIP
原创力文档

文档评论(0)