2.6.5 习题
1.小帅参加了今年的CSP-J第二轮认证,遇到一道名为“nihao”的题,要求从“nihao.in” 文件输入,从“nihao.out” 文件输出,则以下加在主函数开头部分的代码段哪一个是正确的?( )
A.
fopen("nihao.in", "r", stdin);
fopen("nihao.out", "w", stdout);
B.
fopen("r", "nihao.in", stdin);
fopen("w", "nihao.out", stdout);
C.
freopen("nihao.in", "r", stdin);
freopen("nihao.out", "w", stdout);
D.
freopen("nihao.in", stdin, "r");
freopen("nihao.out", stdout, "w");
【解析】<stdio.h> 提供的库函数FILE *freopen(const char *filename, const char *mode, FILE *stream) 把一个新的文件名filename与给定的打开的流stream关联,同时关闭流中的旧文件。其中,mode是字符串,包含了文件访问模式,"r" 表示“打开一个用于读取的文件”,"w"表示“创建一个用于写入的空文件”。在CSP-J的第二轮认证中,因为正式测评采用文件输入/输出流,所以我们需要在主函数的开头加上freopen函数。
【答案】C