当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
2015年9月计算机三级数据库上机练习题及答案
发布时间:2011/9/14 16:52:31 来源:城市学习网 编辑:ziteng

  1.已知在文件IN.dat中存有若干个(不多于200个)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组number中。请编写函数CalValue(),其功能要求是:①求出文件中所有的正整数个数totNum;②求这些数中的各位数字之和是奇数的个数totCnt,以及满足此条件的这些数的算术平均值totave。最后调用函数writeDat()把所求的结果输出到OUT.dat文件中。

  【答案】

  void CalValue(void)

  { int i, thou, hun, ten, data;

  for (i=0; i

  { if (!number[i])

  break;

  if (number[i] > 0)

  totNum++;

  thou = number[i]/1000;

  hun = number[i]%1000/100;

  ten = number[i]%100/10;

  data = number[i]%10;

  if ((thou+hun+ten+data)%2)

  { totCnt++;

  totave += number[i];

  }

  }

  totave /= totCnt;

  } [NextPage] 

  2.下列程序的功能是:计算500~800区间内素数的个数count,并按所求素数的值从大到小的顺序排序,再计算其间隔加、减之和,即第1个素数-第2个素数+第3个素数-第4个素数+第5个素数……的值sum。请编写函数primeValue()实现程序的要求。最后调用函数writeDat(),把结果count和sum输出到OUT.dat文件中。

  【答案】

  void primeValue()

  { int i, j, half, yy[100];

  for (i=800; i>=500; i--)

  { half = i/2;

  for (j=2; j

  if (i%j == 0)

  break;

  if (j >= half)

  { yy[count] = i;

  count++;

  }

  }

  for (i=0, j=1; i

  { sum += j*yy[i];

  j = j*-1;

  }

  }

 [NextPage]

  3.下列程序的功能是:选出5000以下符合条件的自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的10倍。计算并输出这些四位自然数的个数count以及这些数的和sum。请编写函数calValue()实现程序的要求,最后调用函数writeDat(),把结果count和sum输出到OUT.dat文件中。

  【答案】

  void calValue()

  { int i, thou, hun, ten, data;

  for (i=5000; i>=1000; i--)

  { thou = i/1000;

  hun = i%1000/100;

  ten = i%100/10;

  data = i%10;

  if (thou+hun==ten+data && thou+hun==(data-thou)*10)

  { count++;

  sum += i;

  }

  }

  }

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved