《2022年3月计算机三级网络技术考前练习试题及答案(1)022高级工计算机试题及答案》由会员分享,可在线阅读,更多相关《2022年3月计算机三级网络技术考前练习试题及答案(1)022高级工计算机试题及答案(14页珍藏版)》请在金锄头文库上搜索。
1、2022年3月计算机三级网络技术考前练习试题及答案(1)2022高级工计算机试题及答案1.已知数据文件IN1.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jVal(),其功能是:如果4位数各位上的数字均是奇数,则统计出满足此条件的个数cnt,并把这些4位数按从大到小的顺序存入数组b中。最后调用函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT1.DAT文件。注意:部分源程序已给出。程序中已定义数组:a200, b200,已定义变量:cnt。请勿改动主函数main()、读函数readDat()和写函数writeDat()的
2、内容。#include#defineMA 某 200intaMA 某,bMA 某,cnt=0;voidwriteDat();voidjVal()inti,j;/某定义循环控制变量某/inta1,a2,a3,a4;/某定义变量保存4位数的每位数字某/inttemp;/某定义数据交换时的暂存变量某/for(i=0;i200;i+)/某逐个取每一个4位数某/a4=ai/1000;/某求4位数的千位数字某/a3=ai%1000/100;/某求4位数的百位数字某/a2=ai%100/10;/某求4位数的十位数字某/a1=ai%10;/某求4位数的个位数字某/if(a4%2!=0&a3%2!=0&a2%2
3、!=0&a1%2!=0)/某如果4位数各位上的数字均是奇数某/bcnt=ai;/某将满足条件的数存入数组b中某/cnt+;/某统计满足条件的数的个数某/for(i=0;ifor(j=i+1;jif(bitemp=bi;bj=temp;voidreadDat()inti;FILE 某 fp;fp二fopen(IN1.DAT,r);for(i=0;ifcanf(fp,%d,&ai);fcloe(fp);voidmain()inti;readDat();jVal();printf(满足条件的数二%dn,cnt);for(i=0;iprintf(dn,bi);printf(n);writeDat();
4、voidwriteDat()FILE 某 fp;inti;fp二fopen(out1.dat,w);fprintf(fp,%dn,cnt);for(i=0;ifprintf(fp,%dn,bi);fcloe(fp);2.已知IN2.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jVal(),其功能是:依次从数组a中取出一个数,如果该4位数连续大于该4位数以后的5个数且该数是奇数,则统计出满足此条件的数的个数cnt,并把这些4位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT2.D
5、AT文件中。注意:部分源程序已给出。程序中已定义数组:a200, b200,已定义变量:cnt。请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。#include#defineMA 某 200intaMA 某,bMA 某,cnt=0;voidwriteDat();voidjVal()inti,j;/某定义循环控制变量某/inttemp;/某定义数据交换是的暂存变量某/for(i=0;iif(ai%2!=0)/某如果当前数是奇数某/for(j=i+1;jbj)temp=bi;bi=bj;bj=temp;voidreadDat()inti;FILE 某 fp;fp二fopen(IN2.DAT,r);for(i=0;iMA 某;i+)fcanf(fp,d,&ai);fcloe(fp);voidmain()inti;readDat();jVal();printf(满足条件的数二%dn,cnt);for(i=0;icnt;i+)printf(%d,bi);printf(n);writeDat();voidwriteDat()FILE 某 fp;inti;fp二fopen(OUT2.DAT,w);fprintf(fp,dn,cnt);for(i=0;icnt;i+)fprintf(fp,%dn,bi);fcloe(fp);