void jsVal() {
int i,thou,hun,ten,data,j; int ab,cd;
for(i=0;i<200;i++) {
thou=a[i]/1000; /*求四位数的千位数字*/ hun=a[i]00/100; /*求四位数的百位数字*/ ten=a[i]0/10; /*求四位数的十位数字*/ data=a[i]; /*求四位数的个位数字*/ ab=10*thou+ten; cd=10*data+hun;
if(isprime(ab)&&isprime(cd)&&ab!=0&&cd!=0) { b[cnt]=a[i]; cnt++; } }
for(i=0;i if(b[i] 第31套 已知数据文件IN1.DAT和IN2.DAT中分别存有100个两位十进制数,并且已调用读函数readDat()把这两个文件中的数存入数组a和b中,请考生编写一个函数jsVal(),实现的功能是一次对数组a和b中得数按条件重新组成一个新数并一次存入数组c中,在对数组c中的数按从小到大的顺序进行排序,最后调用输出函数writedat()吧结果输出到文件OUT.DAT中。 组成新数的条件:如果数组a和b中相同的下表位置的数必须符合一个是奇数,则数组a中的十位数为新的千位数字,个位数字仍为新数的个位数字,数组b中的十位数字为ixnde百位数字,个位数字为新的十位数字,把这样组成的新数一次存入数组c中 int i,j; /* 定义变量 */ int a1,a2,b1,b2; int ab; int temp; for(i=0;i { a1=a[i]; /* 数位分解 */ a2=a[i]/10; b1=b[i]; b2=b[i]/10; ab=a2*1000+b2*100+b1*10+a1;/* 数位重组 */ if(a[i]%2==1&&b[i]%2==1) /* 判断条件 */ c[cnt++]=ab; } for(i=0;i 21 / 57 { temp=c[i]; c[i]=c[j]; c[j]=temp; } 第32套 已知数据文件IN24.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的两位数ab(新两位数的十位数字是原四位数的千位数字,新两位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的两位数cd(新两位数的十位数字是原四位数的个位数字,新两位数的个位数字是原四位数的百位数字),如果新组成的两个两位数ab 注意:部分源程序已给出。程序中已定义数组:a[200]、b[200];已定义变量:cnt。请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 【参考答案】 jsVal() { int i,thou,hun,ten,data,j; int ab,cd; for(i=0;i<200;i++) { thou=a[i]/1000; /*求四位数的千位数字*/ hun=a[i]00/100; /*求四位数的百位数字*/ ten=a[i]0/10; /*求四位数的十位数字*/ data=a[i]; /*求四位数的个位数字*/ ab=10*thou+ten; cd=10*data+hun; if(((ab-cd)<0&&ab%2==1&&ab%5!=0)&&cd%2!=1&&ab/10!=0&&cd/10!=0) { b[cnt]=a[i]; cnt++; } } for(i=0;i if(b[i] 第33 套 已知数据文件IN25.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsVal(),其功能是:把个位数字和千位数字重新组合成一个新的十位数ab(新十位数的十位数字是原4位数的个位数字,新十位数的个位数字是原4位数的千 22 / 57 位数字),以及把百位数字和十位数字组成另一个新的十位数cd(新十位数的十位数字是原4位数的百位数字,新十位数的个位数字是原4位数的十位数字),如果新组成的两个数均为偶数且两个十位数中至少有一个数能被9整除,同时两个新数均不为零,则将满足此条件的4位数按从大到小的顺序存入数组b中,并计算满足上述条件的4位数的个数cnt,最后,调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT25.DAT文件中。 注意:部分源程序已给出。程序中已定义数组:a[200]、b[200];已定义变量:cnt。请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 【参考答案】 int i,j; /* 定义变量 */ int a1,a2,a3,a4; int ab,cd; int temp; for(i=0;i { a1=a[i]; /* 数位分解 */ a2=a[i]0/10; a3=a[i]00/100; a4=a[i]/1000; ab=a1*10+a4; /* 数位重组 */ cd=a3*10+a2; if(ab%2==0&&cd%2==0&&(ab%9==0||cd%9==0) &&a1!=0&&a3!=0) /* 判断条件 */ b[cnt++]=a[i]; } for(i=0;i { temp=b[i]; b[i]=b[j]; b[j]=temp; } 第34套 已知数据文件IN26.DAT中存有200个4位数,并已调用读函数readDat( )把这些数存入数组a中,请编制一个函数jsVal(),其功能是:把个位数字和千位数字重新组合成一个新的十位数ab(新十位数的十位数字是原4位数的个位数字,新十位数的个位数字是原4位数的千位数字),以及把百位数和十位数组成另一个新的十位数cd(新十位数的十位数字是原4位数的百位数字,新十位数的个位数字是原4位数的十位数字),如果新组成的两个十位数必须是一个奇数、另一个为偶数且两个十位数中至少有一个数能被17整除,同时两个新数均不为0,则将满足此条件的4位数按从大到小的顺序存入数组b中,并要计算满足上述条件的4位数的个数cnt,最后,调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT26.DAT文件中。 注意:部分源程序已给出。程序中已定义数组:a[200]、b[200];已定义变量:cnt。请勿改 23 / 57 动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 【参考答案】 void jsVal( ) { int i,thou,hun,ten,data,j; int ab,cd; for(i=0;i<200;i++) { thou=a[i]/1000; /*求四位数的千位数字*/ hun=a[i]00/100; /*求四位数的百位数字*/ ten=a[i]0/10; /*求四位数的十位数字*/ data=a[i]; /*求四位数的个位数字*/ ab=data*10+thou; cd=hun*10+ten; if((ab==0||cd==0)&&((ab%2!=1&&cd%2==1)||(ab%2==1&&cd%2!=1))&&ab!=0&&cd!=0) { b[cnt]=a[i]; cnt++; } } for(i=0;i if(b[i] 第35套 已知数据文件IN27.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsVal(),其功能是:把千位数字和十位数字重新组合成一个新的十位数ab(新十位数的十位数字是原4位数的千位数字,新十位数的个位数字是原4位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数的十位数字是原4位数的个位数字,新十位数的个位数字是原4位数的百位数字),如果新组成的两个十位数ab>cd,ab必须是偶数且能被5整除,cd必须是奇数,同时两个新数均不为0,则将满足此条件的4位数按从大到小的顺序存入数组b中,并要计算满足上述条件的4位数的个数cnt,最后,调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT27.DAT文件中。 注意:部分源程序已给出。程序中已定义数组:a[200]、b[200];已定义变量:cnt。请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 【参考答案】 void jsVal( ) { int i,thou,hun,ten,data,j; int ab,cd; for(i=0;i<200;i++) { 24 / 57 thou=a[i]/1000; /*求四位数的千位数字*/ hun=a[i]00/100; /*求四位数的百位数字*/ ten=a[i]0/10; /*求四位数的十位数字*/ data=a[i]; /*求四位数的个位数字*/ ab=thou*10+ten; cd=data*10+hun; if((ab-cd>0)&&(ab%2!=1&&ab%5==0)&&cd%2==1&&ab!=0&&cd!=0) { b[cnt]=a[i]; cnt++; } } for(i=0;i if(b[i] 第36套 已知数据文件IN29.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一个函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该数连续小于该四位数以后的5个数,且该数是偶数,则统计出满足此条件的个数cnt,并把这些四位数按从小到大的顺序存入数组b中。最后,main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT29.DAT文件中。 注意:部分源程序已给出。程序中已定义数组:a[200]、b[200];已定义变量:cnt。请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 【参考答案】 void jsVal() { int i,j,flag=0; for(i=0;i if(a[i] b[cnt++]=a[i]; /*将满足条件的数存入数组b中并统计其个数*/ for(i=0; i if (b[i]>b[j]) { flag=b[i]; b[i]=b[j]; b[j]=flag; } } 第37套 已知数据文件IN30.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一个函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该数连续大于该四位数以前的5个数,且该数是偶数,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。最后,main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT30.DAT文件中。 注意:部分源程序已给出。程序中已定义数组:a[200]、b[200];已定义变量:cnt。请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内 25 / 57 百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库2024年9月计算机三级网络技术机试100套上机题库(最新)(5)在线全文阅读。
相关推荐: