C语言编程:计算并输出正整数[M,N]之间的素数之和及素数的个数,其中1<M<N。只用main函数怎么写?

2024-11-16 19:32:17
推荐回答(1个)
回答(1):

代码文本:

#include "stdio.h"

int main(int argc,char *argv[]){

int M,N,sum,t,k;

printf("Enter M & N(int 1

if(scanf("%d%d",&M,&N)==2 && M>1 && M

for(M==2 ? (k=1,sum=2) : k=sum=0,M+=!(M&1);M<=N;M+=2){//求素数

for(t=3;t*t<=M;t+=2)

if(!(M%t))

break;

if(t*t>M)//是素数时统计和及个数

sum+=M,k++;

}

printf("%d  %d\n",sum,k);//输出

}

else

printf("Input error, exit...\n");//输入错误处理

return 0;

}

供参考……