1、国家三级(网络技术)机试模拟试卷 207及答案与解析 一、程序设计题 1 补充函数,要求实现如下功能;寻找并输出 11 999之间的数 m,它满足 m、m2、 m3均为回文数 (回文数是指各位数字左右对称的整数 ),例如; 12321, 505,1458541等。满足上述条件的数如 m=11时, m2=121, m3=1331都是回文数。请编写 jsValue(long m)实现此功能。如果是回文数,则函数返回 1,不是则 返回 0。最后,把结果输出到文件 OUT DAT中。 注意;部分源程序已经给出。 请勿改动主函数 main()中的 内容。 试题程序; #include #include
2、#include int jsValue(long m) main() long m; FILE*out; out=fopen(“OUT DAT“, “w“); for(m=11; m 国家三级(网络技术)机试模拟试卷 207答案与解析 一、程序设计题 1 【正确答案】 int jsVlue(long m) int i, str; half; char temp20; ltoa(m, temp, 10); str=strlen(temp); half=str 2; for(i=0; i=half) return 1; else return 0; 【试题解析】 判断回文数,即比对该数字位置上的数是否相等,此时使用 ltoa函数将数字进行拆分,拆分为各个单独的数字并放入字符数组中,然后进行比对。如果首位位置不相等,则退出循环,如果相等则继续比对,直到比较到中间 位置时都相等,则是回文数,此时返回 1。