作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
尝试使用埃拉托斯特尼筛法打印一个数字的质因数,而不是先找到因数,然后检查每个因数是否是质数。
#include<stdio.h>
#include<math.h>
void primeFactors(int num)
{
int factors[100];
int i,j=0,u,k=0,l;
u=sqrt(num);
for(i=0;i<100;i++)
factors[i]=1;
for(i=2;i<=u;i++)
{
if(factors[i]==0)
continue;
if(num%i==0)
{
factors[j]=i;
l=factors[j];
k=2*factors[j];
j++;
while(k<=u)
{
if(factors[k]==0)
continue;
factors[k]=0;
k+=l;
}
}
}
for(i=2;i<=u;i++)
if(factors[i]!=1)
printf("%d\n",factors[i]);
}
int main()
{
int n=797;
primeFactors(n);
return 0;
}
在 Xcode 上运行它时,它既不显示任何错误,也不打印任何内容。我想不通这个问题。为什么这个不打印?谢谢。
最佳答案
这部分:
while(k<=u)
{
if(factors[k]==0)
continue;
看起来很像无限循环。
关于c - 使用埃拉托斯特尼筛法的质因数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14414578/
[上下文:java 8,spring boot 1.5.1] 我们正在创建一个 RESTful 服务,我们需要能够上传大文件。我想要的是一个看起来像这样的 api @RequestLine("POST
我是一名优秀的程序员,十分优秀!