c语言设有一个文本文件test.txt 其内容为 cprogram,C语言考试题:文件.doc

C语言测试题:文件

PAGE

PAGE 1

———————————————————————————————— 作者:

———————————————————————————————— 日期:

个人收集整理,勿做商业用途

个人收集整理,勿做商业用途

个人收集整理,勿做商业用途

一、选择题:  (1)以下叙述中错误的是 C   A)C语言中对二进制文件的访问速度比文本文件快   B)C语言中,随机文件以二进制代码形式存储数据    C)语句 FILE? fp; 定义了一个名为fp的文件指针   D)C语言中的文本文件以ASCII码形式存储数据    (2)有以下程序  ?#include???   ?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);  ?}  程序运行后的输出结果是 D   A)0? 0???   B)123? 45??   C)1? 4???   D)1? 2    (3)以下与函数fseek(fp,0L,SEEK_SET)有相同作用的是???????D??????    A)feof(fp)   B)ftell(fp)   C)fgetc(fp)   D)rewind(fp)    (4)有以下程序  #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中的内容是?????????B?????????????    A)start   B)end   C)startend   D)endrt    (5) 有如下程序  #include   main()  {FILE? *fp1;  ?? fp1=fopen("f1.txt","w");  ?? fprintf(fp1,"abc");  ?? fclose(fp1);  }  若文本文件f1.txt中原有内容为:good,则运行以上程序后文件f1.txt中的内容为 C   A) goodabc? ?   B) abcd? ??   C) abc? ??   D) abcgood    (6) 有以下程序  #include   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);  }  执行后输出结果是 B   A) 1? 2? ??   B) 123? 0? ??   C) 1? 23? ??   D)? 0?? 0    ?(7) 有以下程序(提示:程序中fseek(fp,-2L*sizeof(int),SEEK_END) ;语句的作用是使位置指针从文件尾向前移2*sizeof(int)字节)  #include   main( )  { FILE *fp;? int i,a[4]={1,2,3,4},b;  ? fp=fopen("data.dat","wb");

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值