我是C语言初学者,请问2~100之间的素数怎么求?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我是C语言初学者,请问2~100之间的素数怎么求?相关的知识,希望对你有一定的参考价值。

详细一点,最好能在步骤后面加上注释。谢谢

素数是仅能被1和本身整除的数。
我们可用一个循环使需要判断的数从2开始一直到它本身进行“除”验证即可判断。程序如下,
#include<stdio.h>
int isp(int m) //定义一个判断素数的函数

int i;
for(i=2;i<m;i++) //将需要判断的数从2开始进行“除”运算
if(m%i==0)return 0; //m%i==0用于判断从2至m本身 有没有能够整除的数
return 1; //若有某一个数能被整除,说明此数不是素数“返回0”,若没有能被整除的,说明它是素数“返回1”

void main()

int i,j;
for(i=2,j=0;i<100;i++) //设定判断数值的范围,从2到99,因为1和100不用考虑,此处你也可以把范围自行设定,
if(isp(i)) //调用素数判断函数isp(),若返回值为“1”,证明是素数,执行下列运算,返回为“0”,则进行下一个for循环。

j++;
printf("\n第%d素数是:%d\n",j,i);


运行得知 1到100区间内 总共有25个素数。
参考技术A #include <stdio.h>
#include <math.h>
int ss(int n) /*检查n是否为素数,如果是则返回1,否则返回0*/

int i;
for (i=2; i<=(int)sqrt((double)n); i++)
if (n%i==0) return 0;
return 1;

int main(void)

int i,j=0;
for (i=2; i<=100; i++)
if(ss(i))

j++;
printf("%5d",i);
if (j%5==0) printf("\n");

printf("\ntotal prime=%d\n",j);
return 0;
参考技术B 楼上的答案可以参考将就一下!

抱歉,现在不是自己的电脑,所以帮不了更多了。。。

C 语言如何用for循环求1到100素数

回答

您好,小编正在查询相关问题的信息,五分钟时间回复您!

您好,很荣幸帮您解答-2、同样,也是输出1-100以内的素数,这个构造一个数组,将其所有元素初始化为1,表示素数,这时取x从2开始,到100以内做循环。若x为素数,即prime[x]!=0,使得每个i*x位置元素置0(prime[i*x]=0),表示为非素数,循环结束前x+1。【希望回答对您有帮助,亲爱的】

提问

请问具体错误在哪里

请问具体错误在哪里

回答

您好,我们近期平台正在维护,暂时查看和发送不了图片,十分抱歉,希望能得到您的谅解。如果这题不是很着急的话,可以等过两天,平台维护好了,在来咨询即可,感谢您。

提问

请打出C 语言如何用for循环求1到100素数的代码

回答

#includeint main() int i,j,k; for(i=1; i<101; i++) k=i>1; for(j=2; j*j<=i; j++) if(i%j==0) k=0; break; if(k)printf("%d ",i); return 0;

提问

电脑说break错了

回答

public class Sushu1 public static void main(String args[]) int primes[] = new int[50]; primes[0] = 2; int cnt = 1; MAIN_LOOP: for ( int x=3 ; cnt提问

能让我看懂的话

回答

代码

提问

这让我怎么改,我当然知道代码错了,具体怎么改呢

这让我怎么改,我当然知道代码错了,具体怎么改呢

回答

这是新的代码

参考技术A

#include<stdio.h>

int main()

int i,j,k;

  for(i=1; i<101; i++)

  k=i>1;

    for(j=2; j*j<=i; j++)

      if(i%j==0)

      k=0;

        break;

     

    if(k)printf("%d ",i);

 

  return 0;

以上是关于我是C语言初学者,请问2~100之间的素数怎么求?的主要内容,如果未能解决你的问题,请参考以下文章

如何用C语言求1至100所有素数的和?

c语言求2到100内的素数

求1到100以内所有素数之和(c语言)

C 语言如何用for循环求1到100素数

用c语言求500到1000的素数

输出50到100所有质数的c语言编程