加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
(再次优化版)素数.c 1.25 KB
一键复制 编辑 原始数据 按行查看 历史
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<math.h>
/*
int main()
{
int i = 0,t = 0;
for (i = 100; i <= 200; i++)
{
for (t = 2; t < i; t++)
{
if (i % t == 0)//说明i有除1和自身以外的因数,不是素数,跳出循环
break;
}
if (t == i)//如果循环结束是因为t一直累加到了i,中途没有跳出循环,说明他没有因数,是素数
printf("%d ", i);
}
return 0;
}
--------------------------------------------------------------------------------------------------------------
int main()
{
int i = 0, t = 0;
for (i = 100; i <= 200; i++)
{
for (t = 2; t <= sqrt(i); t++)//只需要验证到开平方i即可eg:16=2*8=4*4
{
if (i % t == 0)//说明i有除1和自身以外的因数,不是素数,跳出循环
break;
}
if (t == i)//如果循环结束是因为t一直累加到了i,中途没有跳出循环,说明他没有因数,是素数
printf("%d ", i);
}
return 0;
}
*/
int main()
{
int i = 0, t = 0;
for (i = 101; i <= 200; i+=2)//再次优化,偶数不可能是素数,i每次加2
{
for (t = 2; t <= sqrt(i); t++)//只需要验证到开平方i即可eg:16=2*8=4*4
{
if (i % t == 0)//说明i有除1和自身以外的因数,不是素数,跳出循环
break;
}
if (t == i)//如果循环结束是因为t一直累加到了i,中途没有跳出循环,说明他没有因数,是素数
printf("%d ", i);
}
return 0;
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化