66问答网
所有问题
当前搜索:
c语言求素数
C语言
题目:求2~1000内的所有
素数
,写出算法。(要求为效率较高的算法...
答:
要求高效率,则需采用筛法求,试除法的效率是很低的。筛法的源代码可如下。include <stdio.h> include <math.h> void CreatePrime(int *primes, int n){ int i, j, s;primes[0] = primes[1] = 0;for(i = 2; i < n; i++)primes[i] = 1;s = sqrt(n);for(i = 2; i<= ...
C语言
:用数组求1~n内所以
素数
答:
代码资料:include "stdio.h"include <stdlib.h> int main(int argc,char *argv[]){ int i,j,n;char *p;printf("Enter n(int n>0)...\nn=");if(scanf("%d",&n)!=1 || n<1){ printf("Input error, exit...\n");return 0;} if((p=(char *)malloc(++n))==NULL){ pr...
用
c语言求
最大
素数
答:
?&n:&m;b=(m>n)?&m:&n;//调整m,n的大小顺序 for(x=*b;x>=*a;x--){ temp=(int)sqrt(x);for(i=2;i<=temp;i++)if(!(x%i)) continue;//有合数跳出本次循环 if (i>temp){ printf("在%d到%d的范围间,最大的
素数
为: %d ",*a,*b,x);break;} } getch();} ...
c语言求
100以内
素数
的和
答:
include<stdio.h> int isPrime(int a)void main(){ int i,sum=0;for(i=1;i<=100;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<=num/2;i++)if(num%i==0)tag=0;return tag;} ...
编写一个
C语言
程序判断一个数是否是
素数
答:
对接收的变量判断其是否为
素数
,判断的依据是如果能被2到n-1中的某个数整除就是素数,否则就不是。最后把判断的结果打印出来即可:3、最后编译运行调试一下程序,按下crtl+F5编译,在弹出的命令行中输入17这个素数,程序判断的结果是素数说明程序的逻辑是没有问题的。以上就是
C语言
判断素数的方法:...
C语言
:求3到100间全部
素数
答:
include<iostream> include<math.h> using namespace std;bool Isprim(int n){ int m=sqrt(n);if(n<=1)return false;for(int i=2;i<=m;i++)if(n%i==0)break;if(i>m)return true;else return false;} int main(){ int i;for(i=3;i<100;i++)if(Isprim(i))printf("%d "...
c语言
关于用for循环
求素数
答:
main(){int i,j;for(i=2;i<100;i++ ){for (j=2;j<=(i/2);j++){if (i%j==0)break; //如果能被整除,则退出这个for循环}//下面这个判断意思是,如果前面那个for循环结束后,i不能被j整除,则应该是前面的for循环退出原因是j>(i/2),即没有找到能被整除的数,所以认为是
素数
。
求a 到b之间的
素数
,
C语言
答:
include <stdio.h> int main(void){ int a,b,counter,j;int temp = 0;while(scanf("%d %d",&a,&b)!=EOF){ if((a==0)&&(b==0))continue;else { for(counter=a;counter<=b;counter++){ temp = 1; //标示是否为
素数
,1为素数,0为非素数 for(j=2;j<counter;j++){ if(...
c语言求素数
个数
答:
include<stdio.h> include<math.h> int a[1000001];int isprime(int i){ int a;for(a=2;a<=sqrt(i+1);a++)if(i%a==0)return 0;return 1;} main(){ int i,j,k;a[2]=1;for(i=3;i<=1000000;i++)a[i]=a[i-1]+(i%2!=0&&isprime(i)==1);int min,max,K,l;for...
C语言
求救:统计
素数
个数
答:
include<stdio.h>#include <math.h>void main(){int n,i,j,ri,flag,num;scanf("%d",&n);num=0;for(i=2;i<=n;i++){flag=1;ri=int(floor(sqrt(1.0*i)));for(j=2;j<=ri;j++){if(i%j==0){flag=0;break;}}if(flag)num++;}printf("%d",num);} ...
棣栭〉
<涓婁竴椤
4
5
6
7
9
10
8
11
12
13
涓嬩竴椤
灏鹃〉
其他人还搜