练习与自测

1.编写能完成复制指定文件功能的程序。要求源文件名和目标文件名从命令行输入。

2.编写程序,将一个文本文件复制成另一个文件,要求后者内容与前者完全一致但顺序相反。

3.编写程序,它交替地读两个文本文件的内容,并把读的结果在标准输出设备上显示。如果一个文本文件比较短,那么在读完它之后,把长文件余下的内容直接输出到标准输出设备上。

4.写一个比较两个文本文件的程序,要求输出两个文件首次不同的行和字符的位置。

5.写一个程序,能将文件从一个位置移动到另外一个位置。

6.写一个程序,读入文本文件内容,然后按照分栏的样式输出到显示器上。

7.写一个程序,求出300!的精确值,将结果写入文件。

8.按递增顺序依次列出所有分母小于等于40的真分数,并将结果写入一个文本文件。

9.写一能将两个二进制文件合并的程序,要求两个文件的名称从命令行输入。

————————————————————

(1) 文件是磁盘上的东西,指针不可能指向磁盘,指针只能指向内存中的数据对象。

(2) 当然不是只有这一种写法,但其他写法需要懂得相对路径、当前盘、当前路径等概念。

(3) 某些情况下,当程序退出运行时,文件可以自动关闭,但这不是良好的编程习惯。

(4) 建立文件夹可以通过调用system()函数解决。比如DOS或Windows下的system(“MD c:\lianxi”);函数。

(5) 通常认为fgets()比gets()安全,就是因为这个“n”。fgets()的stream参数为“stdin”时,具有和gets()一样的功能。

(6) '练习与自测 - 图1'、'\f'、'\n'、'\r'、'\t'或'\v'。

(7) 可用ferror()和feof()函数判断究竟是出错还是已经读到文件结尾。