1、三级网络技术机试-242 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.补充函数,要求实现如下功能:寻找并输出 11999 之间的数 m,使得 m、m 2、m 3均为回文数(回文数是指各位数字左右对称的整数),例如:12321、505、1458541 等。满足上述条件的数如 m=11 时,m2=121,m 3=1331 都是回文数。请编写 jsValue(long m)实现此功能。如果是回文数,则函数返回 1,不是则返回 0。最后,把结果输出到文件 OUT.DAT 中。注意:部分源程序已经给出。请勿改动主函数 main()中的内容。试题程
2、序:#includestring.h#includestdio.h#includestdlib.hint jsValuelong nmain()long m;FILE*out;out=fopen(“OUT.DAT“,“w“);for(m=11;m1000;m+)if(jsValue(m)jsValue(m*m)jsValue(m*m*m)printf(“m=%4ld,m*m=%6ld,m*m*m=%8ld/n“,m,m*m,m*m*m);fprintf(out,“m=%4ld,m*m=%6ld,m*m*m=%8ld/n“,m,m*m,m*m*m);fclose(out);(分数:100.00)
3、三级网络技术机试-242 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.补充函数,要求实现如下功能:寻找并输出 11999 之间的数 m,使得 m、m 2、m 3均为回文数(回文数是指各位数字左右对称的整数),例如:12321、505、1458541 等。满足上述条件的数如 m=11 时,m2=121,m 3=1331 都是回文数。请编写 jsValue(long m)实现此功能。如果是回文数,则函数返回 1,不是则返回 0。最后,把结果输出到文件 OUT.DAT 中。注意:部分源程序已经给出。请勿改动主函数 main()中的内容。试题程
4、序:#includestring.h#includestdio.h#includestdlib.hint jsValuelong nmain()long m;FILE*out;out=fopen(“OUT.DAT“,“w“);for(m=11;m1000;m+)if(jsValue(m)jsValue(m*m)jsValue(m*m*m)printf(“m=%4ld,m*m=%6ld,m*m*m=%8ld/n“,m,m*m,m*m*m);fprintf(out,“m=%4ld,m*m=%6ld,m*m*m=%8ld/n“,m,m*m,m*m*m);fclose(out);(分数:100.00)
5、正确答案:(int i,j;PRO xy;for(i=0;i99;i+)for(j=i+1;j100;j+)if(strcmp(selli.me,sellj.mc)0如果产品 i 的产品名称小于产品 j 的产品名称strcmp(selli.mc,sellj.mc)=0如果产品 i 的产品名称等于产品 j 的产品名称selli.jesellj.je)如果产品 i 的金额大于产品 j 的金额xy=selli;selli=sellj;sellj=xy;产品 i 和产品 j 交换解析 本题主要考查数组的排序操作。算法思路:i 结点与后面的所有 j 结点比较,若符合条件则交换 i、j 结点位置。然后后移 i 结点,执行步骤直到 i 结点是倒数第 2 个结点为止。)解析: