单选题有以下程序段:FILE*fp;if((fp=fopen(test.txt,w))==NULL){ printf(不能打开文件!); exit(0);}else printf(成功打开文件!);若文件test.txt已存在,则以下叙述正确的是(  )。A程序运行后,文件test.txt中的原有内容将全部消失B程序运行时,会因文件存在而出错C对文件test.txt进行写操作后,可以随机进行读取D对文件test.txt写入的内容总是被添加到文件尾部

单选题
有以下程序段: FILE *fp; if((fp=fopen(test.txt,w))==NULL) {  printf(不能打开文件!);  exit(0); } else  printf(成功打开文件!); 若文件test.txt已存在,则以下叙述正确的是(  )。
A

程序运行后,文件test.txt中的原有内容将全部消失

B

程序运行时,会因文件存在而出错

C

对文件test.txt进行写操作后,可以随机进行读取

D

对文件test.txt写入的内容总是被添加到文件尾部


参考解析

解析:
fopen函数以一定方式打开指定文件,返回一个指向文件的文件指针,如果不能实现打开指定文件的操作,则返回一个空指针NULL。如果指定文件不存在,则创建一个文件名为指定文件名的新文件,然后打开它。在指定文件有错误或者指定文件不存在却不能创建新文件的情况下,打开文件操作错误,返回空指针。本题程序中,文件test.txt已存在,以“w”方式打开文件时,文件test.txt中的原有内容将全部消失,A选项正确。文件原本就存在,不会导致程序出错,会按照指定的方式打开文件,B选项错误。对文件进行写操作,只能对指针指向的位置内容进行写操作,不能随机读写,C选项错误。对文件test.txt写入的内容写到指针所指向的位置,而不是添加在文件尾部,D选项错误。答案选择A选项。

相关考题:

有以下程序#include stdio.hmain(){ FILE *fp; int a[10]={1,2,3},i,n;fp=fopen("dl.dat","w");for(i=0;i3;i++) fprintf(fp,"%d",a[i]);fprintf(fp,"\n");fclose(fp);fp=fopen("dl.dat","r");fscanf(fp,"%d",n);fclose(fp);printf("%d\n",n);}程序的运行结果是A)12300B) 123C) 1D) 321

要打开一个已存在的非空文件“file”用于修改,选择正确的语句() A、fp=fopen(“file“,“r“);B、fp=fopen(“file“,“w“);C、fp=fopen(“file“,“r+“);D、fp=fopen(“file“,“w+“);

执行以下程序后, test.txt 文件的内容是 ( 若文件能正常打开 )#include stdio.hmain(){ FILE *fp;char *s1="Fortran",*s2="Basic";if((fp=fopen("test.txt","wb ” ))==NULL){ printf("Can't open test.txt file\n");exit(1);}fwrite(s1,7,1,fp); /* 把从地址 s1 开始的 7 个字符写到 fp 所指文件中 */fseek(fp,0L,SEEK_SET); /* 文件位置指针移到文件开头 */fwrite(s2,5,1,fp);fclose(fp);}A)BasicanB)BasicFortranC)BasicD)FortranBasic

以下程序用来判断指定文件是否能正常打开,请填空#include stdio.hmain( ){FILE *fp;if (((fp=fopen(“test.txt”,”r”))==【13】))printf(“未能打开文件!\n”);elseprintf(“文件打开成功!\n”);

以下程序用来判断指定文件是否能正常打开 , 请填空。#include stdio.hmain(){ FILE *fp;if(((fp=fopen( " test.txt " , " r " ))== 【 1 3 】 ))printf(" 未能打开文件 !\n");elseprintf(" 文件打开成功 !\n");}

有以下程序#include stdio.hmain(){ FILE *fp; int i=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j);fclose(fp);fp=fopen("d1.dat","r");fscanf(fp,"%d%d",k,n); printf("%d %d\n",k,n);fclose(fp);}程序运行后的输出结果是A.20 30B.20 50C.30 50D.30 20

执行以下程序后,test.txt文件的内容是(若文件能正常打开)( )。includemain(){FILE*fp;c 执行以下程序后,test.txt文件的内容是(若文件能正常打开)( )。 #include<stdio.h> main() { FILE*fp; char*s1="Fortran",*s2="Basic"; if((fp=fopen("test.txt","wb"))==NULL) { printf("Can't open test.txt file\n");exit(1);} fwrite(s1,7,1,fp);/*把从地址s1开始的7个字符写到fp所指文件中*/ fseek(fp,0L,SEEK_SET);/*文件位置指针移到文件开头*/ fwrite(s2,5,1,fp); fclose(fp); }A.BasicanB.BasicFortranC.BasicD.FortranBasic

有以下程序includemain(){FILE*fp;inta[10]={1,2,3},i,n;fp=fopen("d1.daf","w");for( 有以下程序 #include <stdio.h> main() {FILE *fp; int a[10]={1,2,3},i,n; fp=fopen("d1.daf","w"); for(i=0;i<3;i++) fprintf(fp,"%d",a[i]); fprintf(fp,"\n"); fclose(fp); fp=fopen("d1.dat","r"); fscanf(fp,"%d",n); fclose(fp);A.12300B.123C.1D.321

有以下程序includemain(){FILE *fp;int i=20,j=30,k,n;fp=fopen("D1v.dat","w");fprin 有以下程序 #include<stdio.h> main() {FILE *fp;int i=20,j=30,k,n; fp=fopen("D1v.dat","w"); fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j); fclose(fp); fp=fopen("d1.dat","r"); fscanf(fp,"%d%d",k,n);printf("%d%d\n",k,n); fclose(fp); } 程序运行后的输出结果是( )。A.20 30B.20 50C.30 50D.30 20

有以下程序:includemain(){FILE *fp;int i,k=0,n=0;fp=fopen("d1.dat","w");for(i=1;i 有以下程序: #include<stdio.h> main() { FILE *fp; int i,k=0,n=0; fp=fopen("d1.dat","w"); for(i=1;i<4;i++) fprintf(fp,"%d",i); fclose(fp); fp=fopen("d1.dat","r"); fscanf(fp,"%d%d",k,n); printf("%d %d\n", k,n); fclose(fp); } 执行后输出结果是( )。A.1 2B.123 0C.1 23D.0 0

有以下程序include void WriteStr(char*fn,char*str){FILE*fp; fp=fopen(fn,"w");fpu 有以下程序 #include <stdio.h> void WriteStr(char *fn, char *str) { FILE *fp; fp=fopen(fn,"w"); fputs(str,fp);fclose(fp); } main() { WriteStr("t1.dat","start"); WriteStr("t1.dat","end"); } 程序运行后,文件t1.dat中的内容是A.startB.endC.startendD.endrt

有以下程序:include main(){FILE*fp;int i,k,n; fp=fopen("data.dar","w+");for(i=1;i 有以下程序: #include <stdio.h> main() { FILE *fp; int i,k,n; fp=fopen("data.dar","w+"); for(i=1;i<6;i++) { fprintf(fp,"%d ",i); if(i%3==0) fprintf(fp,"\n"); } rewind(fp); fscanf(fp,"%d%d",k,n); printf("%d%d\n",k,n); fclose(fp); } 程序运行后的输出结果是( )。A.0 0B.123 45C.1 4D.1 2

有以下程序include main(){FILE *fp;int i=20,j=30,k,n;fp=fopen("d1.dat","w");fprin 有以下程序 #include <stdio.h> main() { FILE *fp; int i=20,j=30,k,n; fp=fopen("d1.dat","w"); fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j); fclose(fp); fp=fopen("d1.dat", "r"); fp=fscanf(fp,"%d%d",k,n); printf("%d%d\n",k,n); fclose(fp); } 程序运行后的输出结果是A.20 30B.20 50C.30 50D.3020

有以下程序:include main( ){FILE * fp; int i,k,n;fp = fopen( "data. dat" ,"w +" ) 有以下程序:#include <stdlo.h>main( ){ FILE * fp; int i,k,n; fp = fopen( "data. dat" ,"w +" ) for(i = 1 ;i<6;i ++ ) { fprintf(fp."% d",i); if(i%3 ==0)fprintf(fp," \n"); } rewind(fp); fscanf(fp." % d% d" ,k, n) ;printf(" % d%d \n" ,k,n); fclose(fp);A.0 0B.123 45C.1 4D.1

有以下程序: include main() {FILE *fp; int i,k,n; fp=fopen("data 有以下程序: #include <stdio.h> main() {FILE *fp; int i,k,n; fp=fopen("data.dat","w+"); for(i=1;i<6;i++) {fprintf(fp,"%d ",i); if(i%3==0) fprintf(fp,"\n"); } rewind(fp); fscanf(fp,"%d%d",k,n); printf("%d %d\n",k,n); fclose(fp); } 程序运行后的输出结果是 ______。A.0 0B.123 45C.1 4D.1 2

有以下程序:includemain(){FILE*fp;int a[10]={1,2,3},i,n;fp=fopen("d1.dat","w");fo 有以下程序: #include<stdio.h> main() {FILE*fp;int a[10]={1,2,3},i,n; fp=fopen("d1.dat","w"); for(i=0;i<3;i++)fprintf(fp,"%d",a[i]); fprintf(fp,"\n"); fclose(fp); fp=fopen("d1.dat","r"); fscanf(fp,"%d",&n); fclose(fp); printf("%d\n",n); 程序的运行结果是( )。A.12300B.123C.1D.321

以下程序用来判断指定文件是否能正常打开,请填空。 include main() {FILE*fp;if(((fp=fo 以下程序用来判断指定文件是否能正常打开,请填空。include<stdio.h>main(){FILE*fp;if(((fp=fopen("test.txt","r"))=【 】))printf("未能打开文件!\n");elseprintf("文件打开成功!\n");}

设文件test.txt中原已写入字符串Begin,执行以下程序后,文件中的内容为【 15 】 。#include stdio.hmain( ){ FILE *fp;fp= fopen( "test.txt”, ”w+”);fputs( "test",fp);fclose(fp);}

有以下程序 include main( ) { FILE *fp; int i,k=0,n=0; fp=fopen(“d1.dat”, 有以下程序 #include <stdio.h> main( ) { FILE *fp; int i,k=0,n=0; fp=fopen(“d1.dat”,”w”); for(i=1;i<4;i++) fprintf(fp,”%d”,i); fclose(fp); fp=fopen(“d1.dat”,”r”); fscanf(fp,”%d%d”,k,n); printf(“%d %d\n”,k,n); fclose(fp);} 执行后输出结果是( )A.1 2B.123 0C.1 23D.0 0

有以下程序:includemain(){ FILE*fp;int i;char ch[]="abcd",t;fp=fopen("abc.dat","w 有以下程序: #include <stdio.h> main() { FILE *fp; int i; char ch[]="abcd",t; fp=fopen("abc.dat","wb+"); for(i=0;i<4;i++)fwrite(ch[i]1,1,fp); fseck(fp,-2L,SEEK_END) ; fread(t,1,1,fp); felose(fp); printf("%c\n",t); } 程序执行后的输出结果是( )。A.dB.cC.bD.a

有下列程序: includestdi0.hvoidmain( ) {FILE*fp;inta[10]={1,2,3},i,n; fp=fopen(stdi0.hvoidmain( ){FILE*fp;inta[10]={1,2,3},i,n;fp=fopen(dl.dat,w);for(i=0;i3;i++)fprintf(fp,%d,a[i]);fprintf(fp,”\n”);fclose(fp);fp=open(dl.dat,r)fscanf(fp,%d,&n);fclose(fp);printf(”%d\n”,n);}程序的运行结果是( )。A.12300B.123C.1D.321

执行以下程序后,test.txt文件的内容是(若文件能正常打开)______。 #include <stdio.h> main() { FILE *fp; char *s1="Fortran",*s2="Basic"; if((fp=fopen("test.txt","wb"))=NULL) { printf("Can't open test.txt file\n"); exit(1);} fwrite(s1,7,1,fp); /* 把从地址s1开始的7个字符写到fp所指文件中*/ f seek(fp, 0L,SEEK_SET);/*文件位置指针移到文件开头*/ fwrite(s2,5,1,fp); fclose(fp); }A.BasicanB.BasicFortranC.BasicD.FortranBasic

有以下程序: include main( ) { FILE *fp; int i=20,j=50,k,n; fp=fopen("d1.da 有以下程序: #include<stdi0.h> main( ) { FILE *fp; int i=20,j=50,k,n; fp=fopen("d1.dat","W"); fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j); fclose(fp); fp=fopen("d1.dat","r",); fscanf(fp,"%d%d",&k,&n); printf("%d%d\n",k,n); fclose(fp); } 程序运行后的输出结果是A.20 30B.20 50C.30 50D.30 20

有以下程序includemain(){FILE *fP;int k,n,a[6]={1,2,3,4,5,6}; fp=fopen ("d2.dat", 有以下程序 #include<stdio.h> main() {FILE *fP;int k,n,a[6]={1,2,3,4,5,6}; fp=fopen ("d2.dat","w"); fprintf(fp,"%d%d%d\n",a[0],a[1],a[2]); fprintf(fp,"%d%d%d\n",a[3],a[4],a[5]); fclose (fp); fp=fopen("d2.dat","r"); fscanf(fp,"%d%d",k,n);printf("%d%d\n",k,n); fclose(fp); } 程序运行后的输出结果是。A.1 2B.1 4C.123 4D.123 456

下面的程序用变量count统计文件letter.dat中字符的个数。请写出程序的横线处应该填入的内容。()  #include   main( )  {   FILE *fp;  long count=0;  if((fp=fopen((“letter.dat”,       ))==NULL){      printf((“Cannot open file!/n”);      exit(0);  }  while(!feof(fp)){            ;       count++; }  printf((“count=%d/n”,count); fclose(fp);  }

单选题有以下程序段:FILE*fp;if((fp=fopen(test.txt,w))==NULL){ printf(不能打开文件!); exit(0);}else printf(成功打开文件!);若指定文件test.txt不存在,且无其他异常,则以下叙述错误的是(  )。A输出“不能打开文件!”B输出“成功打开文件!”C系统将按指定文件名新建文件D系统将为写操作建立文本文件

填空题下面的程序用变量count统计文件letter.dat中字符的个数。请写出程序的横线处应该填入的内容。()  #include   main( )  {   FILE *fp;  long count=0;  if((fp=fopen((“letter.dat”,       ))==NULL){      printf((“Cannot open file!/n”);      exit(0);  }  while(!feof(fp)){            ;       count++; }  printf((“count=%d/n”,count); fclose(fp);  }