已知数据文件in.dat中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsvalue(),其功能是:求出所有这些四位数是素数的个数cnt,再求出所有满足此条件的四位数平均值pjzl,以及所有不满足此条件的四位数平均值pjz2。最后main()函数调用写函数writeDat()把结果cnt,pjz1,pjz2输出到out.dat文件中。
试题答案及解析
【审题关键句】求素数的个数及平均值,并计算非素数的平均值。
【解题思】
①首先定义循环变量i,然后通过for循环对数组a[300]d0的每个元素a[i]调用函数isV(a[i])判断a[i]是否是素数(素数的算法已在isP()函数中给出,此处直接调用即可),如果是素数,则把其加到变量pjz1上,同时计数变量cnt加1,否则a[i]值加到变量pjz2上。直到判断完数组a[300]00的所有数据后退出循环。
②求出pJz1、pjz2和cnt的值之后,再用变量pjz1的值除以cnt的值就得到素数的平均值,同时把这个值赋给变量pjz1,最后用变量pjz2的值除以300.cnt的值就得到非素数的平均值,并把这个值赋给变量pjz2。
【参考答案】