c语言作业文档,C语言文件练习题含答案

《C语言文件练习题含答案》由会员分享,可在线阅读,更多相关《C语言文件练习题含答案(5页珍藏版)》请在人人文库网上搜索。

1、邵东职业中专2007年高三C语言习题第十二章 文件基础训练一、填空题1、 文件是指___________________________________________________________。2、 根据数据的组织形式,C中将文件分为______ASCII码文件________和___二进制文件___________两种类型。3、 现要求以读写方式,打开一个文本文件 stu1 ,写出语句:__FILE *fp fp=fopen(“stu.txt”,”r+”);_______________。__________________________________。4、 现要求将上题中打开的。

2、文件关闭掉,写出语句:___fclose(fp);__________________。5、 若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则打开文件方式字符串应该是___fopen(“a.txt”,”wb+”);__________。二、选择题1、若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是( ) 。 A) fopen(A:userabc.txt,r) B) fopen(A:userabc.txt,r+)C) fopen(A:userabc.txt,rb) C) fopen(A:userabc.txt,w)2、若fp。

3、已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为( )。A) 0 B) 1 C) 1 D) 一个非0值3、 当已经存在一个file1.txt文件,执行函数fopen(“file1.txt”,”r+”)的功能是( )。)打开file1.txt文件,清除原有的内容;)打开file1.txt文件,只能写入新的内容;)打开file1.txt文件,只能读取原有内容;)打开file1.txt文件,可以读取和写入新的内容;4、 fread(buf , 64,2,fp)的功能是:( ))从fp所指向的文件中,读出整数64,并存放在buf中;)从fp所指向的文件中,读出整数64和2,。

4、并存放在buf中;)从fp所指向的文件中,读出64个字节的字符,读两次,并存放在buf地址中;)从fp所指向的文件中,读出64个字节的字符,并存放在buf中;5、 以下程序的功能是( ) 。main()FILE * fp;char str=”Beijing 2008”;fp = fopen(“file2”,”w”);fputs(str,fp);fclose(fp);)在屏幕上显示“Beiing 2008”;)把”Beijing 2008”存入file2文件中;)在打印机上打印出“Beiing 2008”;)以上都不对;6、 以下程序是建立一个名为myfile的文件,并把从键盘输入字符存入该文件。

5、,当键盘上输入结束时关闭该文件。选择正确内容填空。main() FILE *fp;char c ;char name10;fp=fopen(“myfile”,_”wb”_______);do c=getchar();fputc(c , fp); while(c!=EOF); fclose(fp); (1) A) fgets B)fopen C ) fclose D) fgetc (2) A) “r” B) “r+” C ) “w” D) “w+”三、设计题1、 编写一个程序,以只读方式打开一个文本文件 filea.txt ,如果打开,将文件地址放在fp文件指针中,打不开,显示“Cannt op。

6、en filea.txt file n. ”,然后退出。void main()FILE *fp;if(fp=fopen(filea.txt,r)=0);printf()综合训练一、 填空题1、以下程序段打开文件后,先利用 fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。 FILE *myf; ling f1;myf= _________ (“test.t”,“rb”); fseek(myf,0,SEEK_END); f1=ftel(myf);fclose(myf);printf(“%dn”,f1);2、下面程序把从终端。

7、读入的10个整数以二进制方式写到一个名为bi.dat的新文件中,请填空.#includeFILE *fp;main() int i,j;if(fp=fopen(__”bi.dat”__________, wb)=NULL) exit(0); for(i=0; imain( ) FILE *fp;char ch,fname32; int count=0;printf(Input the filename :); scanf(%s,fname);if(fp=fopen( _fname____________ ,w+)=NULL) printf(Cant open file:%s n,fname);。

8、 exit(0);printf(Enter data:n);while(ch=getchar()!=#) fputc(ch,fp); count+;fprintf(____________ ,n%dn, count); fclose(fp); 5、以下程序的功能是:从键盘上输入一个字符串, 把该字符串中的小写字母转换为大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来。请填空。#includemain() FILE *fp;char str100; int i=0;if(fp=fopen(text.txt,___________)=NULL) printf(cant op。

9、en this file.n);exit(0);printf(input astring:n); gest(str);while (stri) if(stri=a&strimain() FILE *fp;char ch ;char fname10;printf(“Input name of filen”);gets(fname);if (fp=fopen( fname, “w”)=NULL) printf (“cannot open filen”);exit(0) ;printf(“Enter data:n”);while(_______________!=!) /提示:从键盘输入一个字符,如。

10、不是!fputc(__________________) ; /将从键盘输入的字符存入打开的文件中fclose(fp);7、下面程序用变量count 统计文件中字符的个数。请在____________中填写正确内容。#include main() FILE *fp;long count =0;if (fp=fopen(“letter.txt”,___________)=NULL) printf (“cannot open filen”);exit(0) ;while( ! feof (fp) /! feof (fp)- 未到文件尾,为真 /feof()函数判断文件指针是否到文件尾,到文件尾,函。

11、数返回非0值,若未到文件尾,函数返回值0 ___________________; /提示:从文件读入一个字符______________;printf( “count =%ldn”,count);_________________;二、选择题1、下面的程序执行后,文件testt.t中的内容是( )。 #include void fun(char *fname.,char *st) FILE *myf; int i;myf=fopen(fname,“w” );for(i=0;imain() FILE *fp; int i=20,j=30,k,n;fp=fopen(“d1.dat”“w”);fp。

12、rintf(fp,“%dn”,i);fprintf(fp,“%dn”j);fclose(fp);fp=fopen(“d1.dat”, “r”);fp=fscanf(fp,“%d%d”,&k,&n); printf(“%d%dn”,k,n);fclose(fp);程序运行后的输出结果是( ) 。 A) 20 30 B) 20 50 C) 30 50 D) 30 203、 若有以下定义和说明:#iinclude struct std char num6;char name8;float mark4;a30;FILE * fp;设文件中以二进制形式存有许多学生的数据,且已经正确打开,文件指针定位在文。

13、件开头,若要从文件中读出30个学生的数据放入a数组中,以下正确的语句是( )。)fread (a , sizeof(struct std),30 , fp) ;)fread (&ai , sizeof(struct std),1 , fp) ;)fread (a +i, sizeof(struct std),1 , fp) ;)fread (a , struct std,30 , fp) ;4、设有以下结构体类型:struct st char name8;int num;float s4; student 20;并且结构体数组student中的元素都已经有值,若要将这些元素写到fp所指向的磁盘。

14、文件中,以下不正确的形式是( )。)fwrite (student , sizeof(struct st ),20 , fp) ;)fwrite (student ,20* sizeof(struct st ),1, fp) ;)fwrite (student , 10*sizeof(struct st ),10 , fp);)for (i=0;imain() FILE * fp1, *fp2 ;int c ;fp1=fopen(“old.dat”,__________);fp2=fopen(“new.dat”,__________);c=getc(fp1);while(c!=EOF) fpu。

15、tc(c,fp2) ;c = fgetc(fp1); fclose(fp1); fclose(fp2);A) “r” B ) “r+” C) “rb” D) “rb+”A) “W+ “ B) “wb+” C) “ w” D) “wb”三、问答题1、 什么叫“缓冲文件系统”?四、编程题:1、 从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test ”中保存,输入的字符串以!表示结束。参考答案基础训练一、填空题1、是指存储在外部介质上数据的集合 ;2、 ASCII文件和二进制文件;3、 FILE * fp ;fp = fopen( “stu”,” r+ ”) ;。

16、4、 fclose ( fp);5、 ”wb+”二、选择题:1、B 2.、A 3、D 4、C 5、B 6、B、C三、编程题:参考答案main()FILE * fp;If (fp=fopen(“filea.txt”,”r”)=NULL)printf(“Cannt open filea.txt file n” );exit(0); 综合训练一、填空题1、fopen2、bi.datfp3、 !feof(fp)4、 fnamefp5、 w或w+或wt或w+t或wt+stri-32 或stri-(a-A或stri-a+Ar或r+或r+t或rt+6、 ( ch=getchar() ch , fp7、 r 。

17、fgetc(fp); count+ fclose(fp);二、选择题1.、A 2、 A 3、A 4、C 5、 A、C 三、问答题(略)四、编程题 参考答案:#include main()FILE *fp;char str80,filename10;int i=0;if(fp=fopen(“test”,”w”)=NULL) printf(“Cannot open filen”);exit(0);printf(“Input a string:n”);gets(str);while(stri!=!) if (stri=a&stri=z)stri=stri-32;fputc(stri,fp);i+;fclose(fp);fp=fopen(“test”,”r”);fgets(str,strlen(str)+1,fp);printf(“%sn”,str);fclose(fp);本试卷共5页 第5页 制卷人:容利平。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值