2012年计算机等级考试三级网络技术上机练习题(3)
08-21
0
题目7(整数统计排序题) 
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 
    void jsVal() 

 int i,j,gw,sw,bw,qw; 
 for(i=0;i   {gw=a[i]%10;      sw=a[i]/10%10; 
   bw=a[i]/100%10;  qw=a[i]/1000; 
   if((qw+gw)==(sw+bw)&&a[i]%2)  b[cnt++]=a[i]; 
  } 
 for(i=0;i    for(j=i+1;j      if(b[i]>b[j]) { qw=b[i]; b[i]=b[j]; b[j]=qw;} 


题目8(整数排序题) 
下列程序的功能是:将一正整数序列{K1,K2,...,K9}重新排列成一个新的序列。新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面)。要求编写函数jsValue()实现此功能,最后调用writeDat()函数将新序列输出到文件out.dat中。 
    说明:在程序中已给出了10个序列,每个序列有9个正整数,并存入数组a[10][9]中,分别求出这10个新序列。 
    例:序列{6,8,9,1,2,5,4,7,3} 
        经重排后成为{3,4,5,2,1,6,8,9,7} 
   jsValue(int a[10][9]) 
{ int i,j,k,val,num; 
  for(i=0;i<10;i++) 
   { val=a[i][0]; 
     for(j=0;j<9;j++) 
      if(a[i][j]        { num=a[i][j]; 
         for(k=j;k>0;k--) 
           a[i][k]=a[i][k-1]; 
         a[i][0]=num; 
       } 
   } 
}  
  
题目9(整数各位数字运算排序题) 
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 
   void jsVal() 
{int i,j; 
 int qw,bw,sw,gw; 
 for (i=0;i    {qw=a[i]/1000;    bw=a[i]%1000/100; 
    sw=a[i]%100/10;  gw=a[i]%10; 
    if((qw<=bw)&&(bw<=sw)&&(sw<=gw)&&(a[i]%2==0))  b[cnt++]=a[i];  
   }  
 for(i=0;i   for(j=i+1;j     if (b[i]>b[j]) {qw=b[i];b[i]=b[j];b[j]=qw;} 
题目7(整数统计排序题) 
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 
    void jsVal() 

 int i,j,gw,sw,bw,qw; 
 for(i=0;i   {gw=a[i]%10;      sw=a[i]/10%10; 
   bw=a[i]/100%10;  qw=a[i]/1000; 
   if((qw+gw)==(sw+bw)&&a[i]%2)  b[cnt++]=a[i]; 
  } 
 for(i=0;i    for(j=i+1;j      if(b[i]>b[j]) { qw=b[i]; b[i]=b[j]; b[j]=qw;} 


题目8(整数排序题) 
下列程序的功能是:将一正整数序列{K1,K2,...,K9}重新排列成一个新的序列。新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面)。要求编写函数jsValue()实现此功能,最后调用writeDat()函数将新序列输出到文件out.dat中。 
    说明:在程序中已给出了10个序列,每个序列有9个正整数,并存入数组a[10][9]中,分别求出这10个新序列。 
    例:序列{6,8,9,1,2,5,4,7,3} 
        经重排后成为{3,4,5,2,1,6,8,9,7} 
   jsValue(int a[10][9]) 
{ int i,j,k,val,num; 
  for(i=0;i<10;i++) 
   { val=a[i][0]; 
     for(j=0;j<9;j++) 
      if(a[i][j]        { num=a[i][j]; 
         for(k=j;k>0;k--) 
           a[i][k]=a[i][k-1]; 
         a[i][0]=num; 
       } 
   } 
}  
  
题目9(整数各位数字运算排序题) 
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 
   void jsVal() 
{int i,j; 
 int qw,bw,sw,gw; 
 for (i=0;i    {qw=a[i]/1000;    bw=a[i]%1000/100; 
    sw=a[i]%100/10;  gw=a[i]%10; 
    if((qw<=bw)&&(bw<=sw)&&(sw<=gw)&&(a[i]%2==0))  b[cnt++]=a[i]; 
   } 
 for(i=0;i   for(j=i+1;j     if (b[i]>b[j]) {qw=b[i];b[i]=b[j];b[j]=qw;} 

相关内容

热门资讯

2014年计算机等级三级网络技... 2014年计算机等级三级网络技术章节重点难点知识辅导十二
2014年计算机等级三级网络技... 2014年计算机等级三级网络技术章节重点难点知识辅导十一
2012年计算机三级PC技术上... 2012年计算机三级PC技术上机试题及答案(4)
2014年上半年计算机等级数据... 2014年上半年计算机等级数据库考试基础知识辅导5
2014年上半年计算机等级数据... 2014年上半年计算机等级数据库考试基础知识辅导6
2014年计算机等级三级网络技... 2014年计算机等级三级网络技术章节重点难点知识辅导四
2014年计算机等级三级网络技... 2014年计算机等级三级网络技术章节重点难点知识辅导十三
2015年计算机三级考试软件测... 2015年计算机三级考试软件测试技术复习笔记:软件测试对象
2014年计算机等级嵌入式系统... 2014年计算机等级嵌入式系统开发技术知识复习笔记:CPU
2014年计算机等级嵌入式系统... 2014年计算机等级嵌入式系统开发技术知识复习笔记:数字文本