在C程序中,可以通过标准库函数fgetc和fputc实现在文件中单个字符(字节)数据的读写。函数fputc的功能是将用变量c表示的字符数据写到与文件指针stream相关联的文件中去,写入数据的位置由文件的读写位置指针指定,fputc函数执行成功时返回被输出的字符值,当函数执行发生错误时则返回EOF(-1)。编写程序实现功能:将从键盘上输入的若干字符数据写入文本文件mydata.txt。编写程序实现功能:统计一篇英文文章中单词的个数。......
2023-11-20
在C程序中,可以通过标准库函数fgets和fputs对文件中的字符串数据进行读写。fgets和fputs的原型如下:
char*fgets(char*s,int n,FILE*stream);
int fputs(const char*s,FILE*stream);
函数fgets的功能是:从与文件指针stream相关联的文件中最多读取n-1个字符,添加上字符'\0'构成字符串后存放到s所代表的字符串对象中去。如果在读入n-1个字符前遇到换行符'\n'或文件结束符EOF时操作也将结束,将遇到的换行符作为一个有效字符处理,然后在读入的字符串末尾自动加上一个字符串结尾符'\0'后存放到s所代表的字符串对象中。函数fgets的返回值为s对象的首地址,若直接读到文件结尾标志或操作出错时则返回NULL。
函数fputs的功能是:将s所代表的字符串写入文件指针stream相关联的文件。函数fputs正常执行时返回写入文件中的字符个数,函数执行出错时返回值为EOF(-1)。(www.chuimin.cn)
【例7.5】 从键盘上读入若干行字符串并将它们存放到指定文件中,仅输入一个回车时结束输入过程。
由于fputs函数将字符串写入文件时会去掉串结尾符号'\0',这样会使得连续输入的字符串连接在一起。为了将输入的字符串分隔开,结合fgets函数在读到'\n'时会结束一次函数调用的特点,在每个字符串写入文件后再用fputc函数在字符串后写入一个换行符'\n',用以分隔写入的字符串数据。
【例7.6】 编写程序实现功能:打开例5.5创建的数据文件,将文件中的字符串数据读出并显示在屏幕上。
有关C语言程序设计基础(第3版)的文章
在C程序中,可以通过标准库函数fgetc和fputc实现在文件中单个字符(字节)数据的读写。函数fputc的功能是将用变量c表示的字符数据写到与文件指针stream相关联的文件中去,写入数据的位置由文件的读写位置指针指定,fputc函数执行成功时返回被输出的字符值,当函数执行发生错误时则返回EOF(-1)。编写程序实现功能:将从键盘上输入的若干字符数据写入文本文件mydata.txt。编写程序实现功能:统计一篇英文文章中单词的个数。......
2023-11-20
前面章节讨论了将数据写入文件和从文件中读取数据的方法。在上述两方面应用的文件数据处理中,文件操作的模式应该是“读写”文件。“读写”文件的打开模式有两大类:读为主的读写类模式和写为主的读写类模式。在对文件数据读写时,必须确认读写位置指针的性质是“读位置指针”还是“写位置指针”。下面通过两个示例展示文件“读写”模式的使用方法。......
2023-11-20
在文件in.txt中有两个用逗号分开的整数,请编写程序求出这两个整数之间的所有素数,并将求出的素数依次写到文件out.txt中。②写入文件out.txt中的数据用空格分隔。在需要按某种格式处理文件数据的程序中,特别要注意正确书写格式控制字符串中的输入输出控制格式,请读者参照程序中注释进行分析理解。......
2023-11-20
函数fwrite的功能则是将内存储器中指定区域的数据块写入与文件指针stream相关联的文件中。将一个5×10的整型二维数组数据存入指定文件中。编写程序实现功能:将例7.10所创建文件中的数据读出,并将数据按5行10列的矩阵形式进行显示。由于要接收从文件中读出的二维数组数据,程序中需要定义构成方式与之对应的二维数组。......
2023-11-20
例9.2中的程序是按处理文本文件的方式来编写的。在文件内部有一个位置指针,用来指向文件的当前读写字节。文件内部的位置指针用以指示文件内部的当前读写位置,每读写一次,该指针均向后移动,它不需在程序中定义说明,而是由系统自动设置的。例9.3将例9.1中的建立的文件A.dat的内容在屏幕上显示。例9.4从A.dat文件中读入一个含10个字符的字符串。例9.6从键盘输入两个学生数据并写入一个文件中,再读出这两个学生的数据显示在屏幕上。......
2023-11-18
C语言程序的基本构成要素包括:字符集、标识符、保留字、常量、变量、运算符等。每种程序设计语言都规定了书写源程序时允许使用的特定的字符集。·数字:0~9共10个。在其他地方出现时,只起间隔作用,编译程序对它们忽略不计。......
2023-11-20
二进制文件的特点是存储效率较高,但不便于程序中直观地进行数据处理。非缓冲文件系统指的是不由系统开辟文件缓冲区,而是由程序员为用到的每个文件设置数据缓冲区,并自行对文件缓冲区进行管理。C语言中,用一个系统已经构造好的文件类型变量来保存这些信息。......
2023-11-20
例4.7输出一个形如“丰”字的图形。图4.4例4.7输出结果从例4.7可知,逐个字符的输出,使用的格式符是“%c”;以字符串整体一次输出,使用的格式符是“%s”。例如下面的写法就是错误的:printf;如果数组长度大于字符串的实际长度,也只输出’\0’前的字符。其余的空格和回车符都被作为字符串的分隔符。......
2023-11-18
相关推荐