试题

全国计算机等级四级机试试题及答案

时间:2025-05-04 03:56:39 试题 我要投稿
  • 相关推荐

2016全国计算机等级四级机试试题及答案

  1.*PROG1 已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组XX中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求出这些数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些数的算术平均值totpjZ,最后调用函数WriteDat()把所求的结果输出到文件OUT2.DAT中。注意:部分部分源程序存放在PROG1.C中。请勿改动主函数main(),读数据函数ReacdDat()和输出数据函数WriteDat()的内容。*/

2016全国计算机等级四级机试试题及答案

  #include

  #include

  #define MAXNUM 200

  int xx[MAXNUM] ;

  int totNum = 0 ; /* 文件IN.DAT中共有多少个正整数 */

  int totCnt = 0 ; /* 符合条件的正整数的个数 */

  double totPjz = 0.0 ; /* 平均值 */

  int ReadDat(void) ;

  void WriteDat(void) ;

  void CalValue(void)

  { int i;

  int a,b,c,d;

  double sum=0;

  for (i=0;iif (xx[i]>0)

  {

  totNum++;

  a=xx[i]/1000;

  b=xx[i]/100-a*10;

  c=xx[i]/10-a*100-b*10;

  d=xx[i];

  if((a+b+c+d)%2==0)

  {totCnt++;

  sum=sum+xx[i];

  }

  }

  totPjz=sum/totCnt;

  }

  void main()

  {

  clrscr() ;

  if(ReadDat()) {

  printf("数据文件IN.DAT不能打开!�07 ") ;

  return ;

  }

  CalValue() ;

  printf("文件IN.DAT中共有正整数=%d个 ", totNum) ;

  printf("符合条件的正整数的个数=%d个 ", totCnt) ;

  printf("平均值=%.2lf ", totPjz) ;

  WriteDat() ;

  }

  int ReadDat(void)

  {

  FILE *fp ;

  int i = 0 ;

  if((fp = fopen("in.dat", "r")) == NULL) return 1 ;

  while(!feof(fp)) {

  fscanf(fp, "%d,", &xx[i++]) ;

  }

  fclose(fp) ;

  return 0 ;

  }

  void WriteDat(void)

  {

  FILE *fp ;

  fp = fopen("OUT2.DAT", "w") ;

  fprintf(fp, "%d %d %.2lf ", totNum, totCnt, totPjz) ;

  fclose(fp) ;

  }

  2./*PROG2 已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组XX中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求出这些数右移1位后,产生的新数是偶数的数的个数totCnt,以及满足此条件的这些数(右移前的值)的算术平均值totpjZ,最后调用函数WriteDat()把所求的结果输出到文件OUT4.DAT中。

  注意:部分部分源程序存放在PROG2.C中。

  请勿改动主函数main(),读数据函数ReacdDat()和输出数据函数WriteDat()的内容。*/

  #include

  #include

  #define MAXNUM 200

  int xx[MAXNUM] ;

  int totNum = 0 ; /* 文件IN.DAT中共有多少个正整数 */

  int totCnt = 0 ; /* 符合条件的正整数的个数 */

  double totPjz = 0.0 ; /* 平均值 */

  int ReadDat(void) ;

  void WriteDat(void) ;

  void CalValue(void)

  { int i,s;

  double sum=0;

  for (i=0;iif (xx[i]>0)

  { totNum++;

  s=xx[i];

  s=s>>1;

  if ((s%2)==0)

  {

  totCnt++;

  sum=sum+xx[i];

  }

  }

  totPjz=sum/totCnt;

  }

  void main()

  {

  clrscr() ;

  if(ReadDat()) {

  printf("数据文件IN.DAT不能打开!�07 ") ;

  return ;

  }

  CalValue() ;

  printf("文件IN.DAT中共有正整数=%d个 ", totNum) ;

  printf("符合条件的正整数的个数=%d个 ", totCnt) ;

  printf("平均值=%.2lf ", totPjz) ;

  WriteDat() ;

  }

  int ReadDat(void)

  {

  FILE *fp ;

  int i = 0 ;

  if((fp = fopen("in.dat", "r")) == NULL) return 1 ;

  while(!feof(fp)) {

  fscanf(fp, "%d,", &xx[i++]) ;

  }

  fclose(fp) ;

  return 0 ;

  }

  void WriteDat(void)

  {

  FILE *fp ;

  fp = fopen("OUT4.DAT", "w") ;

  fprintf(fp, "%d %d %.2lf ", totNum, totCnt, totPjz) ;

  fclose(fp) ;

  }

【全国计算机等级四级机试试题及答案】相关文章:

全国计算机等级考试四级试题精练及答案03-18

最新全国计算机四级机试试题及答案04-23

2016年计算机等级四级机试试题及答案01-06

全国计算机等级考试四级应用试题及答案解析08-12

2016最新全国计算机四级机试试题及答案12-06

2016全国计算机等级考试四级笔试试题及答案02-25

全国计算机等级考试四级笔试试题附答案07-13

全国英语等级考试四级模拟试题及答案07-28

计算机等级四级考试题及答案05-12