首页 > 考试 > 等级考试 > 三级 > 网络技术 > 正文
2012年计算机三级网络技术考试上机练习题2
2012-08-21       个评论      
收藏    我要投稿
题目4(整数统计排序题)
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该四位数连续小于该四位数以后的五个数且该数是偶数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。
   void jsVal()
{int i,j,flag;
 for(i=0;i<MAX-5;i++)
  {for(j=i+1;j<=i+5;j++)
     if(a[i]<a[j]&&a[i]%2==0) flag=1;
     else { flag=0; break;}
   if(flag==1) b[cnt++]=a[i];
  }
 for(i=0;i<cnt-1;i++)
  for(j=i+1;j<cnt;j++)
   if(b[i]>b[j]) {flag=b[i];b[i]=b[j];b[j]=flag;}
}
 
题目5(整数运算排序题)
在文件in.dat中有200组数据,每组有3个数,每个数均是三位数。函数ReadDat()读取这200组数据存放到结构数组aa中,请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组中的第二个数大于第一个数加第三个数的之和,其中满足条件的组数作为函数jsSort() 的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第二个数加第三个之和的大小进行降序排列(第二个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中,最后调用函数WriteDat()把结果bb输出到文件out.dat中。
    
 
int jsSort()
{int i, j, cnt=0;
 data ch;
 for(i=0;i<200;i++)
    if(aa[i].x2>aa[i].x1+aa[i].x3) bb[cnt++]=aa[i];
 for(i=0;i<cnt-1;i++)
   for(j=i+1;j<cnt;j++)
      if(bb[i].x2+bb[i].x3<bb[j].x2+bb[j].x3) { ch=bb[i];bb[i]=bb[j];bb[j]=ch;}
 return cnt;
}
 
题目6(整数各位统计排序题)
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值大于等于百位数字上的值,百位数字上的值大于等于十位数字上的值,以及十位数字上的值大于等于个位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的数输出到OUT.DAT文件中。
    void jsVal()
{int i,j,thou,hun,ten,data;
 for(i=0;i<MAX;i++)
  {thou=a[i]/1000;   hun=a[i]/100%10;
   ten=a[i]%100/10;  data=a[i]%10;
   if(thou>=hun&&hun>=ten&&ten>=data&&a[i]%2) b[cnt++]=a[i];
  }
 for(i=0;i<cnt-1;i++)
   for(j=i+1;j<cnt;j++)
     if(b[i]>b[j])  {thou=b[i];b[i]=b[j];b[j]=thou;}
}
点击复制链接 与好友分享!回本站首页
上一篇:2012年计算机三级网络技术考试上机练习题3
下一篇:2012年计算机三级网络技术考试上机练习题1
相关文章
图文推荐
文章
推荐
热门新闻

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做实用的IT技术学习网站