2015年计算机等级三级《数据库技术》上机考试题(5)

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2015年4月28日

第5套 上机考试试题

程序test.c的功能是:选出大于100小于1000的所有个位数字与十位数字之和被10除所得余数恰是百位数字的所有素数(如293)。计算并输出上述这些素数的个数cnt以及这些素数值的和sum。请考生编写函数countValue()实现程序要求,最后调用函数writeDAT()把结果cnt和sum输出到文件out.dat中。

答案及解析
【审题关键句】选出100以上、1000以内所有个位数字与十位数字之和被10除所得余数恰是百位数字的素数,计算并输出上述这些素数的个数以及这些素数值的和。
【解题思路】
①首先定义一个循环变量循环i以及用来存放3位数分解之后各位数的变量bw(百位)、SW(十位)和gw(个位)。②通过for循环对100到999的每个数字进行逐个的扫描,循环变量i从100开始,每执行一次循环,i的值加1。③在每次执行for循环时,分解当前变量i值的百位上的数字、十位上的数字和个位上的数字,然后利用表达式(gw+SW)
%10==bw来判断个位数字与十位数字之和被l0除所得余数与百位数字是否相等,同时调用函数isP()判断变量i的值是否是素数,如果以上两个条件同时满足(两个表达式通过&&运算符进行连接),则计数变量cnt值加1、并把其值加到变量sum上,直到循环结束,即可求出从100到999中所有满足条件的素数的个数和它们的和。
【参考答案】


相关文章