打印100—200之间的素数及优化
来源:互联网 发布:荣耀v10网络制式 编辑:程序博客网 时间:2024/06/10 22:12
#include<stdio.h>
int main()
{
int i=0,count=0;
int j=0;
for(i=100;i<=200;i++)
{
for(j=2;j<=i-1;j++)
{
if(i%j==0)
{break;
}
}
if(j==i)
{ printf("%d ",i);
count++;
}
}
printf("\ncount=%d\n",count);
return 0;
}
优化
1,、由于素数不可能是偶数因此素数i可以是 i=101;i<200;i+=2;
2、一个数的素数一定有一个数<=它的一半所以 j=2;j<=i/2;j++;
3、一个数的素数一定有一个数<=它的平方根则 j=2;j<=sqrt(i);j++;
代码如下:
#include<stdio.h>
int main()
{
int i=0;
int j=0;
int count=0;
for(i=101;i<=200;i+=2)
{
for(j=2;j<=i/2;j++)
{
if(i%j==0)
{
break;
}
}
if(j>(i/2))
{
printf("%d ",i);
count++;
}
}
printf("\n%d\n",count);
return 0;
}
#include<stdio.h>
#include<math.h>
int main()
{int i=0;
int j=0;
int count=0;
for(i=101;i<=200;i+=2)
{
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
{break;
}
}
if(j>sqrt(i))
{
printf("%d ",i);
count++;
}
}
printf("\ncount=%d\n",count);
return 0;
}
本文出自 “dream” 博客,转载请与作者联系!
- 打印100—200之间的素数及优化
- 打印100~200之间素数的优化算法
- 打印100—200之间的素数
- C语言求解素数(质数)的优化:打印100-200之间的素数
- 打印100---200之间的素数
- 打印100~200 之间的素数
- 打印100~200 之间的素数
- 打印100~200之间的素数
- 打印100~200 之间的素数
- 打印100~200 之间的素数
- 打印100-200之间的素数
- 打印100~200之间的素数
- 打印100~200之间的素数
- 打印100-200之间的素数
- 打印出100~200之间的素数
- 打印100~200 之间的素数
- 打印100~200 之间的素数
- 打印100到200之间的素数
- Problem C: 数组---求数组中的最大值
- 查找未公开的oracle初始化参数
- qt+evaluatejavascript
- 基本的算法思想
- HDU2188 && HDU2149 && HDU1846
- 打印100—200之间的素数及优化
- 编译ZermoMQ时修改rpath路径
- 用正确的方式写if语句——与零值作比较
- 将十进制转换为二进制和十六进制
- 输出一个数的二进制数的奇数序列和偶数序列(三种方法)
- Tomcat安装教程
- 可以一直接收键盘字符,并将大写转为小写,小写转为大写,数字不作处理
- C语言实现小游戏(一)
- 模拟密码登录