itgle.com

有以下程序段#include <stdio.h>void fun(char*fname,char*st){ FILE * myf; int i; myf=fopen(fname,"w"); for(i=0;i<strlen(st);i++)fputc(st[i],myf); fclose(myf);}main(){ fun("test.t","new world"); fun("test.t","hello,");}程序执行后,文件test.t中的内容是A.hello, B.new worldhello,

题目

有以下程序段#include <stdio.h>void fun(char*fname,char*st){ FILE * myf; int i; myf=fopen(fname,"w"); for(i=0;i<strlen(st);i++)fputc(st[i],myf); fclose(myf);}main(){ fun("test.t","new world"); fun("test.t","hello,");}程序执行后,文件test.t中的内容是A.hello, B.new worldhello,C.new world D.hello,rld


相似考题
参考答案和解析
正确答案:D
本题主要考查文件的操作。在本题的程序中,首先定义了一个无返回值的函数fun,该函数带有两个指针类型的形参,其中第一个形参指向需要被操作文件的文件名,而第二个形参指向被操作的字符串。在函数体中,首先定义一个文件指针,然后以只写的方式打开第一个形参所指向的文件,接着执行for循环,循环结束的条件是循环变量小于被操作字符串的长度,循环体中的程序fputc(st[i],myf);的功能是将字符串中的当前字符输入到文件中。由这些分析我们可以知道,函数fun的作用是将字符串的内容写入到文件中。
在主函数中,两次调用函数fun,当第一次调用时,写入文件的内容为new world,然后第二次调用函数,此时打开文件,文件的指针重新回到开始,然后往文件中写内容“hello,”,由于此时文件中已经有内容“new world”,则需要覆盖前面一部分的内容,因此,程序的最终输出结果是hello,rld,本题的正确答案选D。
更多“有以下程序段#include &lt;stdio.h&gt;void fun(char*fname,char*st){ FILE * myf; int i; my ”相关问题
  • 第1题:

    下面的程序执行后,文件test.t中内容是______。includevoid fun(char *fname,char*st){F

    下面的程序执行后,文件test.t中内容是______。 #include<stdio.h> void fun(char *fname,char*st) {FILE*myf,int i; myf=fopen(fname,"w"); for(i=0;i<strlen(st);i++)fputc(st[i],myf); fclose(myf); } main() {fun("test.t","new world");fun("test.t","hello,");}

    A.hello,

    B.new worldhello

    C.new world

    D.hello, rld


    正确答案:A
    解析:C语言中文件有文本文件与二进制文件,对文件的使用前必须先打开,打开方式有只读、写入、读写等方式。

  • 第2题:

    下面的程序执行后,文件test中的内容是 void fun(char *fname, char *st) { FILE *myf; int i; myf=fopen (fname, "w"); for(i=0; i<strlen(st); i++) fputc(st[i], myf); fclose(myf); } int main(void){ fun("test", "new world"); fun("test", "hello,"); return 0; }

    A.new worldhello,

    B.hello,

    C.new world

    D.hello,rld


    A

  • 第3题:

    【单选题】下面的程序执行后,文件testt.t中的内容是()。 #include <stdio.h> void fun(char *fname.,char *st) { FILE *myf; int i; myf=fopen(fname,“w” ); for(i=0;i<strlen(st); i++)fputc(st[i],myf);="" fclose(myf);="" } main() { fun(“test”,“new world”; fun(“test”,“hello,”0;) }

    A.hello

    B.new worldhello

    C.new world

    D.hello,rld


    hello,

  • 第4题:

    有以下的程序includevoid fun(char*fname,char*st){FILE*myf;inti; myf=fopen(fname,"

    有以下的程序 #include<stdio.h> void fun(char *fname,char *st) { FILE *myf; int i; myf=fopen(fname,"w"); for(i=0;i<strlen(st);i++)fputc(st[i],myf); fclose(myf); } main() { fun("test.t","new world");fun("test.t","hello,");} 程序执行后,文件test.t中的内容是( )

    A.hello,

    B.new worldhello,

    C.new world

    D.hello,rld


    正确答案:A

  • 第5题:

    下面的程序执行后,文件test.t中的内容是 ()。 #include <stdio.h> void fun(char *fname,char *st) {FILE *myf;int i; myf=fopen(fname,"w"); for(i=0;i<strlen(st);i++) fputc(st[i],myf); fclose(myf); } int main(void) { fun("test.t","new world"); fun("test.t","hello,"); return 0; }

    A.hello,

    B.new worldhello,

    C.new world

    D.hello,rld


    hello,