www.zhnq.net > C语言求100以内素数

C语言求100以内素数

#include "stdio.h" void main() { for(int i=2;i<=100;i++)/*确定范围:2100*/ { for(int k=2;k<i;k++) { if(i%k==0)break;/*如果找到一个不是1或者它本身的因子,则停止该循环,此时k<i*/ } if(k==i)printf("%d\n",i);/*当k=i时表明i不存在除1和本身以外因子,因而它是素数,打出来*/ } }

有三种方法:1、输出1-100以内的素数:2、同样,也是输出1-100以内的素数,这个构造一个数组,将其所有元素初始化为1,表示素数,这时取x从2开始,到100以内做循环.若x为素数,即prime[x]!=0,使得每个i*x位置元素置0(prime[i*x]=0),表示为非素数,循环结束前x+1.3、该方法是输出100个素数,基本思想是构造一个素数表,利用函数判断每个数是否能被其之前的素数整除,如果不能,则在素数表内加上该元素,不断循环(while循环结束条件是cnt即数组个数>100).

#include<stdio.h> #include<math.h> void main() { int i,s=0; for(i=1;i<100;i++) if(fun(i)) s+=i; printf("s=%d",s); } int fun(int n) { int i; for(i=2;i<=sqrt(n);i++) if(n%i==0) return 0; return 1; }

1、新建一个求1到100素数之和项目.2、然后我们添加一个cpp文件.3、包含需要用到的头文件.4、然后我们输入main函数.5、然后我们定义两个变量,分别是:a和sum.6、然后我们使用while语句计算1到100之间所有素数之和.7、然后我们运行程序,打印出结果即可.

参考代码:#include <stdio.h> int main() { int a[50]={0} , i = 1, k, p; a[0]=2; for (p = 3; p <= 10;p++)//p应该从3开始 { for (k = 2; k <= p; k++)//k应该从2开始 { if (p%k == 0) break; if (k == p) { a[i] = p; i += 1; } } } for (i = 0; a[i] != 0;i++) printf("%d\n", a[i]); return 0; }

int i = 2; while(i int j = 2; boolean isprimenum = true; while(j if(i % j == 0){ isprimenum = false; break; } } if(isprimenum){ printf("%d", &i); } i++; }

#include<stdio.h> int main() { int n,i; for(n=3;n<=100;n++) { for(i=2;i<n;i++) if(n%i==0)break; else printf("%d\n",n); } return 0;

/* 求100以内所有素数的和 */#include int isPrime(int a); void main() { int i,sum=0; for(i=1;i { if(isPrime(i)) sum+=i; } printf("100以内所有素数的和为:\n%d\n",sum); } int isPrime(int num) { int i,tag=1; for(i=2;tag&&i if(num%i==0) tag=0; return tag; }

cacacacacacacacacacacacacacacacaca #include main() {printf("你是猪");} 哈哈哈

#include <stdio.h> void main() { int s=1; for(int i=1;i<=100;i++) { s=1; for(int j=2;j<i;j++) { if(i%j==0) { s=0; } } if(s!=0) { printf("%d ",i); } } printf("\n"); }

网站地图

All rights reserved Powered by www.zhnq.net

copyright ©right 2010-2021。
www.zhnq.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com