1、计算机三级网络技术机试(上机操作)模拟试卷 2及答案与解析 一、程序设计题 1 请编制函数 int checkValue(1ong n),其功能是:寻找并输出 11至 999之间的数m。它满足 m, m2和 m3均为回文数。所谓回文数是指其各位数字左右对称的整数,例如 121 222, 94249等。满足上述条件的数如 m=11, m2=121, m3=1331皆为回文数。实现此功能,如果是回文数,则函数返回 1,反之则返回 0。最后把结果输出到文件 OUT DAT中。 注意:部分源程序已给出。 请勿改动主函数main()。 试题程 序: #include #include #include
2、int checkValue(1ong n) void main() long m; FILE*out; out=fopen(“OUT DAT”, “w”); for(m=11; m 计算机三级网络技术机试(上机操作)模拟试卷 2答案与解析 一、程序设计题 1 【正确答案】 int checkValue(1ong n) int i, strl, half; char xy20; hoa(n, xy, 10); strl=strlen(xy); half=strl 2; for(i=0; i=half) return 1; else return 0; 【试题解析】 本题将长整型 n转换成为字符串存入数组 xx中,取出字符串的长度,循环到字符串的中部,依次比较相时位置字符。如果碰到某一对不相同就跳出循环,此时 如果 i=half,证明循环自然结束,返回 1, n是回文教,否则循环是强制跳出,证明至少有一对字符不相同所以返回 0, n不是回文数。