要判断100-1000之间的素数,并输出,应该怎样构思,麻烦帮忙写下C的代码!谢谢了。

来源:百度知道 编辑:UC知道 时间:2024/06/01 18:10:51
越详细越好啊!谢了!

从计算机编程角度上来说,算法应该是给定某个数n,然后用这个数n从2开始除,一直除到这个数开平方根(即根号n)为止,如果其中有能被整除的数,那么这个数n就不是素数,反之就是素数,这样的算法在数学上是可以证明的,但对于编程初学者来说,可以从素数的定义着手考虑程序算法,即从2一直除到n-1为止,没有可以被整除的数时,n就是素数 ,
c、c++,java等相近的计算机编程语言的核心代码如下:
...//程序开头
int i,j,sum=0;;
for(i=100;i<=1000;i++)
{
for(j=2;j<i;j=j++)
{
if(i%j==0) break;
}

if(j>=i) //判断上术循环是不是正常退出,是正常退出的话,那个数就是素数 。通过Break语句退出的就不是素数了。
{
sum++;
System.out.println("第"+sum+"个"+i+"是素数!");//这里我采用的是JAVA的程序输出格式,作用是将求出的素数输出;c语言里可以用printf,c++里可以用cout<<;等等。。。
}

}
...//程序结尾
附C的代码:
main(){
int i,j,sum=0;;
for(i=100;i<=1000;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0) break;
}

if(j>=i)
{
sum++;
printf("第"+sum+"个"+i+"是素数!");
}