当前位置: 代码迷 >> C语言 >> 求100内的素数,有错误,小弟求助: 帮我改一下!
  详细解决方案

求100内的素数,有错误,小弟求助: 帮我改一下!

热度:111   发布时间:2005-12-29 17:57:00.0
求100内的素数,有错误,小弟求助: 帮我改一下!

#include"math.h"

voidshaifa(inta[101])

{inti,j;

for(i=1;i<=100;i++)a[i]=i;

for(a[1]=0,i=2;i<=sqrt(100);i++)

if(a[i]!=0)

{j=i+1;

while(j<=100)

{if(a[j]!=0&&a[j]%a[i]==0)a[j]=0;

j=j+1;}

}

}


用筛法的
搜索更多相关的解决方案: 素数  

----------------解决方案--------------------------------------------------------


主函数都没有啊


----------------解决方案--------------------------------------------------------

一片混乱
1.for语句不对
2.第三行
3。最后一行if语句用法不对。既然寻找素数,应该输出它的结果,怎么更改数组了??


----------------解决方案--------------------------------------------------------
索数?什么东西啊?
----------------解决方案--------------------------------------------------------
素数,就是不被整除的数

比如3是素数,33不是素数,因为33能被11整除
----------------解决方案--------------------------------------------------------

for 是有不对啊,
还有int i,j;
不懂怎么改了,数组是难啊,我不是很懂的.
高手改一下!


----------------解决方案--------------------------------------------------------
[CODE]#include <stdio.h>
#include <math.h>
void main()
{
int i,j,k;
for(i=1;i<=100;i++)
{
k=(int)sqrt(i); //开平方
for(j=2;j<=k;j++)
{
if(i%j==0)
break;
if(j==k) //J等于K的时候,还没被整除就打印
printf("%d\t",i);
}
}
}[/CODE]
----------------解决方案--------------------------------------------------------
  相关解决方案