首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT
新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平
驾驶员 | 网络编辑
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
您现在的位置: 考试吧(Exam8.com) > 计算机等级考试 > 计算机二级 > C语言 > 复习资料 > 正文

计算机二级C语言教程章节测试:文件

二、填空题
  (1) 已有文本文件test.txt,其中的内容为:Hello,everyone!。以下程序中,文件test.txt已正确为“读”而打开,由文件指针fr指向该文件,则程序的输出结果是 【1】 。
  #include <stdio.h>
  main()
  { FILE *fr; char str[40];
  ……
   fgets(str,5,fr);
   printf("%s\n",str);
   fclose(fr);
  }
  
  (2) 若fp已正确定义为一个文件指针,d1.dat为二进制文件,请填空,以便为“读”而打开此文件:fp=fopen(    [2]    );。
  
  (3) 以下程序用来统计文件中字符个数。请填空。
   #include  "stdio.h"
   main()
   { FILE  *fp;   long  num=0L;
      if((fp=fopen("fname.dat","r"))==NULL)
      {  pirntf("Open error\n");  exit(0);}
       while( 【3】 )   
       { fgetc(fp); num++;}
       printf("num=%1d\n",num-1);
       fclose(fp);
   }
  
  (4) 以下程序段打开文件后,先利用 fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。
  FILE  *myf;   ling  f1;
  myf= 【4】 (“test.t”,“rb”);  
  fseek(myf,0,SEEK_END); f1=ftel(myf);
  fclose(myf);
  printf(“%d\n”,f1);
  
  (5) 下面程序把从终端读入的文本(用@作为文本结束标志)输出到一个名为bi.dat的新文件中。请填空。
  #include   “stdio.h”
  FILE  *fp;
  {  char  ch;
     if( (fp=fopen (  【5】  ) )= = NULL)exit(0); 
     while( (ch=getchar( )) !=’@’) fputc (ch,fp);
     fclose(fp);
  }
  
  (6) 以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件文件中形成文本文件,并将字符的个数写到文件尾部,请填空。
    #include <stdio.h>
      main(  )
      {      FILE    *fp;
             char    ch,fname[32];   int  count=0;
             printf("Input the filename :"); scanf("%s",fname);
          if((fp=fopen(  【6】   ,"w+"))==NULL)  
        {    printf("Can't open file:%s \n",fname); exit(0);}
        printf("Enter data:\n");
        while((ch=getchar())!="#"){   fputc(ch,fp);  count++;}
        fprintf(  【7】   ,"\n%d\n", count);   
        fclose(fp);
      }
  
  (7) 下面程序把从终端读入的10个整数以二进制方式写到一个名为bi.dat的新文件中,请填空.
       #include<stdio,h>
       FILE  *fp;
       main()
      {  int i,j;
         if((fp=fopen( 【8】,    "wb"))==NULL)  exit(0);  
         for(i=0;  i<10; i++)
        {  scanf("%d",&j);
          fwrite(&j,sizeof(int),1, 【9】  ); 
       }
       fclose(fp);
  }
  
  (8) 以下程序的功能是:从键盘上输入一个字符串, 把该字符串中的小写字母转换为大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来。请填空。
       #include
       main()
       { FILE     *fp;
         char    str[100];    int   i=0;
         if((fp=fopen("text.txt",【10】))==NULL)
          { printf("can't open this file.\n");exit(0);}
          printf("input astring:\n");    gest(str);
          while (str[i])
          { if(str[i]>='a'&&str[i]<='z')
              str[i]=【11】;
              fputc(str[i],fp);
              i++;
          }
          fclose(fp);
          fp=fopen("test.txt",【12】); 
          fgets(str,100,fp);
          printf("%s\n",str);
          fclose(fp);
       }
  
  (9) 下面程序把从终端读入的文本用@作为文本结束标志)复制到一个名为bi.dat的新文件中,请填空。
  #include <stdio.h>
  FILE *fp;
  main()
  { char ch;
  if((fp=fopen( 【13】))==NULL)exit(0);
  while ((ch=getchar())!='@')fputc(ch,fp); 【14】  
  
  (10) 以下程序由终端输入一个文件名,然后把从终端键盘输入的字符依次存放到该文件中,用#作为结束输入的标志.请填空.
  #include <stdio.h>
  main()
  { FILE * fp;
  char ch,fname[10];
  printf("lnput the name of file\n");
  gets(fname);
  if((fp=【15】)==NULL) 
  { printf("Cannot open\n");    exit(0);}
  printf("Enter data\n");
  while((ch=getchar())!='#')   fputc(【16】,fp); 
  fclose(fp);     }

上一页  1 2 3 4 5 下一页
文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。