读书人

关于素数的有关问题内存直接崩溃了。

发布时间: 2012-03-19 22:03:05 作者: rapoo

关于素数的问题,内存直接崩溃了。怎么回事
关于素数的问题,内存直接崩溃了。然后看看我这个算法是不是有问题?
#include"stdio.h"
int main(){
int i,j;
for(i=1;i<=20;i++)
{for(j=2;j<=i;j++)
{
if(i%j==0) break;
if(i==j)
printf("素数有:%d\n",i);
}
}

}

[解决办法]

C/C++ code
#include<stdio.h>int main(){    int i,j;    for(i=1;i<=20;i++)    {        for(j=2;j<=i;j++)        {            if(i%j==0)                break;        }        if(i==j)              printf("素数有:%d\n",i);    }    return 0;}
[解决办法]
C/C++ code
int sushup(int m) {    int tmp;    int count = sqrt(m)+1;    for (tmp = 2; tmp < count; tmp++) {        if (m % tmp == 0) {            break;        }    }    if (tmp >= count) {        return 1;    } else {        return 0;    }}
[解决办法]
那就是你软件的问题,并不是你写的程序的问题。。。估计是你电脑长时间没关机,并且内存泄露太多之类的
[解决办法]
lz是算法有问题,如果i=j,那肯定i%j=0,所以就跳出循环了。

读书人网 >C语言

热点推荐