it认证]20xx年3月全国计算机等级考试三级网络技术上机题库南开100题内容摘要:
................................... 44 题目 95 (实数运算题 ) .................................................................................................. 45 题目 96(完全平方数问题 ) ............................................................................................... 46 ★题目 97 (回文数问题) ............................................................................................... 46 ★题目 98(出圈题) ................................................................................................... 47 ☆题目 99( SIX/NINE 问题 ) ............................................................................................... 47 整数排序题 ☆题目 1(整数排序题 ) 在文件 中有 200 个正整数,且每个数均在 1000 至 9999 之间。 函数 ReadDat()读取这 200 个数存放到数组aa 中。 请编制函数 jsSort(),其函数的功能是: 要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前 10 个数依次存入数组 bb 中,如果后 三位的数值相等,则按原先的数值进行降序排列。 最后调用函数WriteDat()把结果 bb 输出到文件 中。 例:处理前 6012 5099 9012 7025 8088 处理后 9012 6012 7025 8088 5099 void jsSort() { int i,j,data。 for(i=0。 i199。 i++) for(j=i+1。 j200。 j++) if(aa[i]%1000aa[j]%1000||aa[i]%1000==aa[j]%1000amp。 amp。 aa[i]aa[j]) {data=aa[i]。 aa[i]=aa[j]。 aa[j]=data。 } for(i=0。 i10。 i++) bb[i]=aa[i]。 } ****************************************************************************** ☆题目 2 正整数排序 在文件 中有 200 个正整数,且每个数均在 1000 至 9999 之间。 函数 ReadDat()读取这 200 个数存 放到数组aa 中。 请编制函数 jsSort(),其函数的功能是: 要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前 10 个数依次存入数组 b 中,如果后三位的数值相等,则按原先的数值进行升序排列。 最后调用函数WriteDat()把结果 bb 输出到文件 中。 例:处理前 9012 5099 6012 7025 8088 处理后 5099 8088 7025 6012 9012 void jsSort() { int i,j,data。 for(i=0。 i199。 i++) for(j=i+1。 j200。 j++) if(aa[i]%1000aa[j]%1000||aa[i]%1000==aa[j]%1000amp。 amp。 aa[i]aa[j]) {data=aa[i]。 aa[i]=aa[j]。 aa[j]=data。 } for(i=0。 i10。 i++) bb[i]=aa[i]。 } *************************************************************************** ★☆题目 3(整数统 计排序题 ) 已知数据文件 中存有 200 个四位数,并已调用读函数 readDat()把这些数存入数组 a 中,请考生编制一函数 jsVal(),其功能是: 依次从数组 a 中取出一个四位数,如果该四位数连续大于该四位数以后的五个数且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数 t 并把这些四位数按从小到大的顺序存入数组 b中 ,最后调用写函数 writeDat( )把结果 t以及数组 b中符合条件的四位数输出到。 void jsVal() {int i,j,flag。 for(i=0。 iMAX5。 i++) {for(j=i+1。 j=i+5。 j++) if(a[i]a[j]amp。 amp。 a[i]%2) flag=1。 else {flag=0。 break。 } if(flag==1) b[t++]=a[i]。 } for(i=0。 it1。 i++) for(j=i+1。 jt。 j++) if(b[i]b[j]) {flag=b[i]。 b[i]=b[j]。 b[j]=flag。 } } ********************************************************************* ☆题目 4(整数统计排序题 ) 已知数据文件 中存有 200 个四位数,并已调用读函数 readDat()把这些数存入数组 a 中,请考生编制一函数 jsVal(),其功能是: 依次从数组 a 中取出一个四位数,如果该四位数连续小于该四位数以后的五个数且该数是偶数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数 t 并把这些四位数按从小到大的顺序存入数组 b中 ,最后调用写函数 writeDat( )把结果 t以及数组 b中符合条件的四位数输出到。 void jsVal() {int i,j,flag。 for(i=0。 iMAX5。 i++) {for(j=i+1。 j=i+5。 j++) if(a[i]a[j]amp。 amp。 a[i]%2==0) flag=1。 else { flag=0。 break。 } if(flag==1) b[t++]=a[i]。 } for(i=0。 it1。 i++) for(j=i+1。 jt。 j++) if(b[i]b[j]) {flag=b[i]。 b[i]=b[j]。 b[j]=flag。 } } **************************************************************************** 题目 5(整数运算排序题) 在文件 中有 200 组数据,每组有 3 个数,每个数均是三位数。 函数 ReadDat()读取这 200 组数据存放到结构数组 aa中,请编制函数 jsSort(),其函数的功能是: 要求在 200 组数据中找出条件为每组中的第二个数大于第一个数加第三个数的之和,其中满足条件的组数作为函数 jsSort() 的返回值,同时把满足条件的数据存入结构数组 bb 中,再对 bb 中的数据按照每组数据的第二个数加第三个之和的大小进行降序排列(第二个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组 bb 中, 最后调用函数 WriteDat()把结果 bb 输出到文件 中。 int jsSort() {int i, j, t=0。 data ch。 for(i=0。 i200。 i++) if(aa[i].x2aa[i].x1+aa[i].x3) bb[t++]=aa[i]。 for(i=0。 it1。 i++) for(j=i+1。 jt。 j++) if(bb[i].x2+bb[i].x3bb[j].x2+bb[j].x3) { ch=bb[i]。 bb[i]=bb[j]。 bb[j]=ch。 } return t。 } ************************************************************************ ★题目 6(整数各位统计排序题) 已知数据文件 中存有 200 个四位数,并已调用读函数 readDat()把这些数存入数组 a 中,请考生编制一函数 jsVal(),其功能是: 若一个四位数的千位数字上的值大于等于百位数字上的值,百位数字上的值大于等于十位数字上的值,以及十位数字上的值大于等于个位数字 上的值,并且原四位数是奇数,则统计出满足此条件的个数t 并把这些四位数按从小到大的顺序存入数组 b 中 ,最后调用写函数 writeDat()把结果 t 以及数组 b 中符合条件的数输出到 文件中。 void jsVal() {int i,j,thou,hun,ten,data。 for(i=0。 iMAX。 i++) {thou=a[i]/1000。 hun=a[i]/100%10。 ten=a[i]%100/10。 data=a[i]%10。 if(thou=hunamp。 amp。 hun=tenamp。 amp。 ten=dataamp。 amp。 a[i]%2) b[t++]=a[i]。 } for(i=0。 it1。 i++) for(j=i+1。 jt。 j++) if(b[i]b[j]) {thou=b[i]。 b[i]=b[j]。 b[j]=thou。 } } *********************************************************************** 题目 7(整数统计排序题) 已知数据文件 中存有 200 个四位数 ,并已调用读函数 readDat()把这些数存入数组 a 中,请考生编制一函数 jsVal(),其功能是: 把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数 字上的值,并且原四位数是奇数,则统计出满足此条件的个数 t 并把这些四位数按从小到大的顺序存入数组 b中 ,最后调用写函数 writeDat( )把结果 t 以及数组 b 中符合条件的四位数输出到 文件中。 void jsVal() { int i,j,gw,sw,bw,qw。 for(i=0。 iMAX。 i++) {gw=a[i]%10。 sw=a[i]/10%10。 bw=a[i]/100%10。 qw=a[i]/1000。 if((qw+gw)==(sw+bw)amp。 amp。 a[i]%2) b[t++]=a[i]。 } for(i=0。 it1。 i++) for(j=i+1。 jt。 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()函数将新序列输出到文件 中。 说明: 在程序中已给出了 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。 i10。 i++) { val=a[i][0]。 for(j=0。 j9。 j++) if(a[i][j]val) { num=a[i][j]。 for(k=j。 k0。 k) a[i][k]=a[i][k1]。 a[i][0]=num。 } } } ******************************************************************************* ★题目 9(整数各位数字运算排序题 ) 已知数据文件 中存有 200 个四位数,并已调用读函数 readDat()把这些数存入数组 a 中,请考生编制一函数 jsVal(),其功能是: 若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数 t 并把这些四位数按从小到大的顺序存入数组 b 中 ,最后调用写函数 writeDat()把。it认证]20xx年3月全国计算机等级考试三级网络技术上机题库南开100题
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。