80、下列程序的功能是:选取出100以上1000以内所有个位数字与十位数字之和被10除所
得余数恰是百位数字的素数(如293)。计算并输出上述这些素数的个数CNT以及这些素
数值的和SUM。请编写函数COUNTVALUE()实现程序要求,最后调用函数WRITEDAT()把
结果CNT和SUM输出到文件OUT.DAT中.
#include <stdio.h>
int cnt, sum;

void countvalue()
{

}

void main()
{
cnt=sum=0;

countvalue();
printf("cnt=%d\n",cnt);
printf("sum=%d",sum);
writedat();
}

writedat()
{
FILE *fp;

fp=fopen("out.dat","w");
fprintf(fp,"%d\n%d\n",cnt,sum);
fclose(fp);
}
/* 注:内嵌的for()循环用来判断i以前的数有否能整除i的数若能则提前终止循环,第
二个if()中j==i的作用是配合前面的for()判断i是否是素数。*/
void countvalue()
{
int i,j;
for(i=100;i<1000;i++)
{for(j=2;j<i;j++)
if(i%j==0) break;
if(j==i&&((i%10+i/10%10)%10==i/100))
{cnt++;
sum+=i;
}
}
}

返回南开百题目录

www.163164.cn 联系QQ:3149886