有以下程序 #include <stdio.h> main( ) { int i; FILE* fp; for (i=0; i<3; i++) { fp = fopen("res.txt", "w"

admin2021-02-25  11

问题 有以下程序
#include   <stdio.h>
main( )
{
    int  i;
    FILE*  fp;
    for (i=0; i<3; i++)
    {
        fp = fopen("res.txt", "w");
        fputc(’K’ + i, fp);
        fclose(fp);
    }
}
程序运行后,在当前目录下会生成一个res.txt文件,其内容是

选项 A、EOF
B、M
C、KLM
D、L

答案B

解析 for循环中,每次都执行打开文件res.txt、写入文件、再关闭文件的操作,由于fopen函数使用’w’模式写文件,所以每次打开res.txt后,都删除文件中的原有数据,再重新写入新数据。所以文件最终的内容只与最后一次for循环有关,最后一次for循环是向文件res.txt写入’K’+2, 即M,正确答案是B选项。
转载请注明原文地址:https://jikaoti.com/ti/RJz0FFFM
0

最新回复(0)