求出01-800之间所有素数C
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/18 12:53:57
筛法求素数,速度超快.public class SievePrime {\x09\x09static int maxNumber =&nbs
#include#includevoidmain(){intcount=0,i,m,n;for(m=2;m
#include#includeintp(intx)//x是素数返回1,否则返回0{inti;for(i=2;i0)y=y/10,i++;//求x的位数y=x;while(y){a=y/pow(10,
5035095215235415475575635695715775875935996016076136176196316416436476536596616736776836917017097197
下面的程序已经给你修改正确了:#includevoidmain(){intm,n,i,j,k;scanf("%d%d",&m,&n);for(i=m;i
#includevoidmain(){intm,n,i,j,k;intsum=0;scanf("%d%d",&m,&n);for(i=m;i
其实都差不多,这个是算法的不同.但是最简单的算法还是sqrt(m)
第一个是正确的我来解释doublefun(intn){intm,k,i;doubles=0.0;for(m=3;m
#includevoidmain(){inti,t;intj=0;for(i=100;i
#include<stdio.h>#include<math.h>voidmain(){intm,k,i,n=0;for(m=2;m<=1000;m=m+1){
因为每次不是质数的时候你还是判断是不是c是6的倍数,这个应该放在C++后面再问:汗,我是新手菜鸟,你能帮我改正一下吗?就发改正部份就行再答:#include#includeintmain(void){
你这个程序中的x一旦变成0之后,就不会变成1了,所以在循环检查有没有约数前,写上x=1;就可以了:for(i=3;i
inti,flag,M=0,N=0;\x09printf("输入素数起始范围:");\x09scanf("%d%d",&M,&N);\x09for(M;M
intP(intx){inta,b;b=(int)sqrt(x);for(a=2;ab)return1;elsereturn0;}是判断质数的函数,接下来的你自己去弄调用吧
#includeintisprime(intk){inti;for(i=2;i*i
把这个问题分为两步,首先得到
#include#includemain(){intm,k,i,n=0;for(m=1;m
for(j=2;j
#include#includevoidmain(){inti,j,sum=0,s;for(i=3;i{s=sqrt((double)i);for(j=2;j{if(i%j==0)break;}if(
#includeusingnamespacestd;#defineN200intmain(){inti,j,sum=0;intlow=3,high=200;for(i=low;i