• 我相信“交警雨中护送高考生”是真,“交警雨中护送高考生”反被该高考生家长投诉是假。 2019-04-16
  • 14名消防员日巡逻28公里 洗冷水澡 2019-04-10
  • 靶壕有了“蓝军”,百发百中的“神枪手”练起来 2019-04-10
  • 不是秀强大了,别人就会来做朋友,这逻辑不对 2019-04-01
  • 候选企业:中国石油呼和浩特石化公司 2019-03-26
  • 航天员沙漠野外生存训练完美收官!为第一天团打call 2019-03-25
  • 请问,建立市场经济后,原计划经济哪里去?改革后,我们还在实行计划经济,为何没有提及? 2019-03-25
  • 构建年轻干部梯次培养链 2019-03-19
  • 孙实的专栏作者中国国家地理网 2019-03-15
  • 湖南师范大学举行研究阐释党的十九大精神国家社科基金重大专项学术研讨会 2019-03-15
  • [雷人]蠢货!土地处于不同的城市和地段,关联的资源不一样,价值也不一样。不然给咱俩同样面积的土地,咱的在北上广深,你的在边远山区,你干么? 2019-03-08
  • 国际社会持续热议上合青岛峰会:上合组织发展进入新阶段 彰显中国领导力 2019-03-08
  • 珍惜野生动物频现甘孜境内 生态环境质量不断提升 2019-03-06
  • "新经济形势下金融创新的变革与机遇"论坛 2019-03-06
  • 频道栏目
    神奇公式秒杀全国11选5 > 考试 > 等级考试 > 三级 > 网络技术 > 正文

    山西11选5:计算机等级考试三级网络技术上机题(4)

    2014-12-18 08:25:04           
    收藏   我要投稿

    神奇公式秒杀全国11选5 www.2zfa.com   函数readDat()的功能是从文件IN75.DAT中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数 jsSort(),该函数的功能是:以行为单位对字符串按下面给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数 writeDat()把结果xx输出到文件OUT75.DAT中。

      条件:从字符串中间一分为二,左边部分按字符的ASCII值降序排序,排序后,左边部分与右边部分按例子所示进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。

      例如,  位置 0 1 2 3 4 5 6 7 8

      源字符串 a b c d h g f e

      2 3 4 9 8 7 6 5

      则处理后字符串 h g f e d c b a

      8 7 6 5 9 4 3 2

      注意:部分源程序已给出。

      请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。

      试题程序:

      #include

      #include

      #include

      char xx[20][80];

      void readDat();

      void writeDat();  来源:www.examda.com

      void jsSort()

      {

      }

      void main()

      {

      readDat();

      jsSort();

      writeDat();

      }

      void readDat()

      {

      FILE *in;

      int i=0;

      char *p;

      in= fopen("IN75.DAT", "r");

      while(i < 20="" &&="" fgets(xx[i],="" 80,="" in)="" !="NULL)">

      {

      p = strchr(xx[i], 'n');

      if(p) *p = 0;

      i++;

      }

      fclose(in);

      }

      void writeDat()

      {

      FILE *out;

      int i;

      system("CLS");

      out = fopen("OUT75.DAT", "w");

      for(i = 0; i < 20;="" i++)="">

      {

      printf("%sn", xx[i]);

      fprintf(out, "%sn", xx[i]);

      }

      fclose(out);

      }

      【答案】

      void jsSort()

      {

      int i,j,k; /*定义计数器变量*/

      int str,half; /*定义存储字符串长度的变量*/

      char temp; /*定义数据交换时的暂存变量*/

      for(i=0;i<20;i++)>

      {

      str=strlen(xx[i]); /*求字符串的长度*/

      half=str/2; /*通过变量half将字符串分为左右两部分*/

      for(j=0;j

      排序*/

      for(k=j+1;k

      if(xx[i][j]<>

      {

      temp=xx[i][j];

      xx[i][j]=xx[i][k];

      xx[i][k]=temp;

      }

      for(j=half-1,k=str-1;j>=0;j--,k--) /*将左边部分和右边部分的对应字符交换*/

      {

      temp=xx[i][j];

      xx[i][j]=xx[i][k];

      xx[i][k]=temp;

      }

      }

      }

      【解析】本题考查对二维字符数组的处理。

      需要首先求得各行字符串的长度(利用求字符串长度的strlen()函数),然后借助循环结构逐个访问各行中的每一个字符。

      在本题中,应先确定各行中字符串的中间位置,之后用选择法先对中间位置以前的字符进行降序排序。接着把中间位置前的一个位置定为初始位置,字符串中的最后一个位置也视为初始位置,使两个位置所对应的字符进行交换,交换过后,这两个位置值(也就是下标值)分别前移,再进行对应位置字符的交换。

    上一篇:计算机等级考试三级网络技术上机题(7)
    下一篇:计算机等级考试三级网络技术上机题(5)
    相关文章
    图文推荐

    关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 神奇公式秒杀全国11选5

    版权所有: 神奇公式秒杀全国11选5--致力于做实用的IT技术学习网站

  • 我相信“交警雨中护送高考生”是真,“交警雨中护送高考生”反被该高考生家长投诉是假。 2019-04-16
  • 14名消防员日巡逻28公里 洗冷水澡 2019-04-10
  • 靶壕有了“蓝军”,百发百中的“神枪手”练起来 2019-04-10
  • 不是秀强大了,别人就会来做朋友,这逻辑不对 2019-04-01
  • 候选企业:中国石油呼和浩特石化公司 2019-03-26
  • 航天员沙漠野外生存训练完美收官!为第一天团打call 2019-03-25
  • 请问,建立市场经济后,原计划经济哪里去?改革后,我们还在实行计划经济,为何没有提及? 2019-03-25
  • 构建年轻干部梯次培养链 2019-03-19
  • 孙实的专栏作者中国国家地理网 2019-03-15
  • 湖南师范大学举行研究阐释党的十九大精神国家社科基金重大专项学术研讨会 2019-03-15
  • [雷人]蠢货!土地处于不同的城市和地段,关联的资源不一样,价值也不一样。不然给咱俩同样面积的土地,咱的在北上广深,你的在边远山区,你干么? 2019-03-08
  • 国际社会持续热议上合青岛峰会:上合组织发展进入新阶段 彰显中国领导力 2019-03-08
  • 珍惜野生动物频现甘孜境内 生态环境质量不断提升 2019-03-06
  • "新经济形势下金融创新的变革与机遇"论坛 2019-03-06