题目66:下列程序的功能是:计算500-800区间内素数的个数cnt,并按所求素数的值从大到小的顺序,再计算其间隔加、减之各,即第1个素数-第2个素数+第3个素数-第4个素数+第5个素数……的值sum。请编写函数countvalue()实现程序的要求,最后调用函数writedat()把结果cnt和sum,输出到文件out11.dat中。
注意:部分源程序已给出。
请勿改动主函数main()和输出数据函数writedat()的内容。
--------------------------
void countValue() /*标准答案*/
{
int i, j, half, yy[100];
for (i=800; i>=500; i--)
{
half = i/2;
for (j=2; j<half; j++)
if (i%j == 0)
break;
if (j >= half)
{
yy[cnt] = i;
cnt++;
}
}
for (i=0, j=1; i<cnt; i++)
{
sum += j*yy[i];
j = j*-1;
}
}
素数
最新推荐文章于 2023-10-23 16:02:44 发布