1 / 33
文档名称:

11第八章文 件.ppt

格式:ppt   页数:33
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

11第八章文 件.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

11第八章文 件.ppt

文档介绍

文档介绍:第八章
文件
1
研究式学习—C程序设计(第八章)
上讲内容回顾
指针与字符串
指针数组
指针作为函数参数
数组名作为函数参数
指针型函数
指向函数的指针
指向指针的指针
2
研究式学习—C程序设计(第八章)
本讲主要内容
保存若干个字符到磁盘中
把若干个字符串保存到文本文件
文件的概念、定义及使用规则
与文件操作有关的函数
命令行参数
综合应用举例
3
研究式学习—C程序设计(第八章)
数据的终端输入输出
前几章的数据输入输出都是以终端为对象的,即键盘(标准输入设备)输入数据,屏幕(标准输出设备)输出数据,如此:
内存
Stdin

getc()
scanf()
Stdout

putc()
printf()
难以实现大批量数据的输入和重复利用
难以保存程序的运行结果
当需要利用磁盘上的数据作为输入或需要将程序运行结果保存在磁盘中时,就需要改变数据的输入或输出方式。
4
研究式学习—C程序设计(第八章)
数据的磁盘输入输出
C语言没有专门的输入输出语句,是通过调用输入输出库函数实现数据I/O的,我们完全可以自编函数来完成数据I/O。
C语言提供了丰富的输入输出函数,不仅可以完成终端输入输出,也可将数据以文件形式组织在磁盘上实现从磁盘输入输出
输入
输入
输出
输出
磁盘
文件
内存
键盘
屏幕
5
研究式学习—C程序设计(第八章)
完成数据的读写需要以下几步:
 第一步;以写方式建立并打开一个磁盘文件
 第二步;从键盘逐个输入字符到字符变量中
 第三步;将字符变量中的字符写到打开的磁盘
文件中(内存磁盘)
 第四步;从磁盘文件中的第一个字符开始逐个
读出字符到字符变量中(磁盘内存)
 第五步;将字符变量中的字符显示在显示器上
保存若干个字符到磁盘中
问题的提出
从键盘输入一行字符,把它们永久保存起来,需要的时候再读出
显示在屏幕上。
问题分析
必须建立一个磁盘文件,把内存中的数据写到磁盘文件中保存。再将其读到内存,然后显示出来。
6
研究式学习—C程序设计(第八章)
程序
例8_1 从键盘输入若干行字符, 的文件中,再把该文件内容读出显示在屏幕上。
#include<>
main()
{
FILE *fp; /* 定义文件指针 fp */
char str;
If((fp=fopen(“”,“w”))==NULL) /*打开文件 */
{ printf(“\nCan’t open this file!\n”);
exit(1); }
str=getchar();
while(str!=’\n’)
{ fputc(str,fp);/*把输入的字符写到fp 指向的文件*/
str=getchar(); }
rewind(fp); /*使fp所指的文件读写位置
指针定位于文件开头*/
str=fgetc(fp); /*将fp指向的文件中的字
符赋给str变量*/
while(str!=EOF)
{ putchar(str); /*显示str变量中的字符*/
str=fgetc(fp); }
printf(“\n”);
fcloss(fp); } /* */
C程序对文件操作的一般过程:
打开文件——读/写文件——关闭文件
7
研究式学习—C程序设计(第八章)
把若干个字符串保存到文本文件
问题:
从键盘输入一个班学生的信息,把它们保存起来,需要的时候再读出显示在屏幕上,或者只读出其中指定的一部分学生的信息。
问题分析:
1、需要输入输出结构体等“数据块”的变量的值,用C语言中数据块输入输出函数
fread()和fwrite来输入输出数据。
2、前面介绍的对文件的读写方式都是顺序读写,即读写文件只能从头开始顺序读写各个数据。当只需要读写文件中某一指定的部分时,就需要移动文件内部的位置指针到需要读写的位置,再进行读写,这种方式称为文件的随机读写。
对文件的随机读写需要使用文件定位函数强制改变文件的读写位置。
C语言的文件定位函数有:
fseek()函数、ftell()函数、rewind()函数。
8
研究式学习—C程序设计(第八章)
程序
例8_2 从键盘输入10个学生的信息,每个学生的信息包括学号、姓名、学习成绩,。
void std();
main()
{ int i;
printf(“Input student information:\n");
for(i=0;i<N;i++){
scanf("%ld,%s",&str[i].num,

最近更新

2025年浙江特殊教育职业学院单招职业倾向性测.. 39页

2025年浙江省衢州市单招职业适应性考试模拟测.. 41页

2025年浙江越秀外国语学院单招职业倾向性测试.. 40页

2026年单招试题口诀大全必考题 42页

2025年海南经贸职业技术学院单招职业技能测试.. 40页

2025年淮南师范学院单招职业适应性测试模拟测.. 40页

2025年湖北交通职业技术学院单招职业技能考试.. 41页

2025年湖北幼儿师范高等专科学校单招综合素质.. 39页

2026年哈尔滨城市职业学院单招综合素质考试模.. 43页

2026年唐山工业职业技术学院单招职业倾向性测.. 42页

2026年嘉兴南洋职业技术学院单招职业倾向性测.. 41页

2026年四川单招职业素养测试题及答案1套 43页

2025年湖南工艺美术职业学院单招综合素质考试.. 42页

2025年湖南水利水电职业技术学院单招职业适应.. 41页

2025年湖南电子科技职业学院单招职业适应性测.. 39页

2026年天津理工大学中环信息学院单招职业适应.. 41页

2025年漳州城市职业学院单招职业倾向性测试模.. 39页

2025年潍坊工商职业学院单招职业适应性测试题.. 40页

新冠肺炎疫情防控告知书 6页

2026年安徽省铜陵市单招职业倾向性考试模拟测.. 42页

2026年安徽邮电职业技术学院单招职业倾向性考.. 41页

2025年甘肃省武威地区单招职业适应性测试模拟.. 40页

2025年盐城幼儿师范高等专科学校单招综合素质.. 41页

2025年石家庄城市经济职业学院单招综合素质考.. 41页

2025年石家庄科技信息职业学院单招职业技能考.. 40页

2025年福州工商学院单招综合素质考试题库汇编.. 40页

2026年山西体育职业学院单招职业适应性测试题.. 42页

2025年广州卫生职业技术学院单招职业技能测试.. 64页

美团代运营业务委托合同 6页

新概念青少版2A各单元重点归纳 15页