c语言编程输出区间 [m,n]内的素数,区间范围由用户输入,并统计所输出的素数总数.

#include<stdio.h>#include <stdlib.h>#include <math.h>int isprime(int a){ int i,b; b=0; for(i=2;i<=sqrt(a);i++) { if(a%i==0) { break; } else { b=b+1; printf("%d ",a); } }}int main(){ int a,b,m,n; printf("输入区间 [m,n]范围\n"); scanf("%d,%d",&m,&n); for(a=m;a<=n;a++) { if(a==2) { printf("%d ",a); } else { isprime(a) ; } } printf("素数总数%d",b);}题目条件规定对素数的判断要编写函数为什么有些数字会重复输出?还有该怎么统计输出的素数总数?

#include<stdio.h>

#include <stdlib.h>

#include <math.h>

int isprime(int a)

{int i;

if(a<2)return 0;

for(i=2;i<=sqrt(a);i++)

if(a%i==0)return 0;

printf("%d ",a);

return 1;

}

int main()

{

int a,b=0,m,n;

printf("输入区间 [m,n]范围\n");

scanf("%d,%d",&m,&n);

for(a=m;a<=n;a++)

{

if(a==2)

{ printf("%d ",a);

b++;

}

else

{ b+=isprime(a) ;

}

printf("\n素数总数%d\n",b);

return 0;

}

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网