就业数据资源平台
当前位置:首页 > 数据库技术
2011年计算机等级三级数据库上机题及答案(12)

34.下列程序的功能是:选出100以上、1000之内所有个位数字与十位数字之和被10除所得余数恰好是百位数字的素数(如293),计算并输出上述这些素数的个数count以及这些素数值的和sum。请编写函数countValue()实现程序要求。最后调用函数WData(),把结果count和sum输出到OUT.dat文件中。

  【答案】


  void countValue()


  { int i, j, half, hun, ten, data;


  for (i=101; i<1000; i++)


  { hun = i/100;


  ten = i%100/10;


  data = i%10;


  if (hun == (ten+data)%10)


  { half = i/2;


  for (j=2; j

  if (i%j == 0)


  break;


  if (j >= half)


  { count++;


  sum += i;


  }


  }


  }


  }


  35.函数RData()实现从文件IN.dat中读取一篇英文文章,存入字符串数组str中,请编写函数encryptChar(),其功能是:按给定的替代关系对数组str中的所有字符进行替代后,仍存入数组str的对应位置上。最后调用函数WData(),把结果str输出到OUT.dat文件中。


  替代关系:f(p)=p*11mod 256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是数字0~9,则该字符不变,否则将f(p)所对应的字符进行替代。


  原始数据文件存放的格式是:每行的宽度均小于80个字符。


  【答案】


  void encryptChar()


  { int i;


  char *pf;


  for (i=0; i

  { pf = str[i];


  while (*pf != 0)


  { if ((*pf*11%256>='0' && *pf*11%256<='9') || *pf*11%256<=32)


  { pf++;


  continue;


  }


  *pf = *pf*11%256;


  pf++;


  }


  }


  }


  36.函数RData()实现从文件IN.dat中读取一篇英文文章,存入字符串数组str中,请编写函数encryptChar(),其功能是:按给定的替代关系对数组str中的所有字符进行替代后,仍存入数组str的对应位置上。最后调用函数WData(),把结果str输出到OUT.dat文件中。


  替代关系:f(p)=p*11mod 256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是数字0~9,则该字符不变,否则将f(p)所对应的字符进行替代。


  原始数据文件存放的格式是:每行的宽度均小于80个字符。


  【答案】


  void encryptChar()


  { int i;


  char *pf;


  for (i=0; i

  { pf = str[i];


  while (*pf != 0)


  { if ((*pf*11%256>='0' && *pf*11%256<='9') || *pf*11%256<=32)


  { pf++;


  continue;


  }


  *pf = *pf*11%256;


  pf++;


  }


  }


  }

就业数据资源平台