C语言程序设计题:用筛选法求100以内的素数

如题所述

素数。在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。素数在数论中有着很重要的地位。比1大但不是素数的数称为合数。1和0既非素数也非合数。

用筛选法求100以内的素数的源代码如下

#include "stdio.h"

#include "stdlib.h"

main()

{

int i,j;

for(i=2;i<99; i++)

{

for(j=2; j<i; j++)

{

if(i%j==0)

{

break;

}

if(j==i-1)

{

printf("%4d",i);

}

扩展资料

求100以内的巧数的源代码如下

#include<bits/stdc++.h>

using namespace std;

int sum(int n)

{

return (n/10%10+n%10)+((n/10%10)*(n%10));

}

int main(){

int n=100;

for(int i=10;i<=n;i++)

{

if(sum(i)==i) cout<<i<<endl;

}

return 0;

}

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-03-02
方法一:
说明:从1至100放入数组,将非素数置为0;
n用来控制输出,每行输出五个;
# include<stdio.h>
# include<math.h>
void main()
{
int a[101],i,j,n=0;
for(i=1;i<=100;i++)
a[i]=i;
for(i=1;i<=100;i++)
{
for(j=2;j<=sqrt(i);j++)
{
if(a[i]%j==0)
a[i]=0;
}
}
for(i=1;i<=100;i++)
{
if(a[i]!=0)
{printf("%d ",a[i]);
n++;}
if(n%5==0)
printf("\n");
}
}

方法二:
说明:此方法是将2至100间各数的倍数置为0,则所剩的自然就是素数了;
# include<stdio.h>
# include<math.h>
void main()
{
int a[101],i,j,n=0;
for(i=1;i<=100;i++)
a[i]=i;
for(j=2;j<=100;j++)
{
for(i=1;i<=100;i++)
{
if(a[i]%j==0)
a[i]=0;
}
}
for(i=1;i<=100;i++)
{
if(a[i]!=0)
{printf("%d",a[i]);
n++;}
if(n%5==0)
printf("\n");
}

方法三:
说明:用goto语句实现;
# include<stdio.h>
# include<math.h>
void main()
{
int i,j,k;
for(i=1;i<=100;)
{
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
goto ab;
}
printf("%d ",i);
n++;
if(n%5==0) printf("\n");
ab: i++;
}
}

方法四:
说明:用break;语句实现;
# include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=100;i++)
{
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
break;
}
if(j>sqrt(i))
{printf("%d ",i);
n++}
if(n%5==0)
printf("\n");
}
}本回答被网友采纳
第2个回答  2008-04-25
#include<stdio.h>
#include<math.h>
int main()
{
int m,k,i;
printf("1~100的素数为:\n");
for (m=1;m<=100;m++)
{
k=sqrt(m);
for (i=2;i<=k;i++)
if (m%i==0)
break;
if (i>=k+1)
{
printf("%d ",m);
}
if (m%50==0)
printf("\n");
}
return 0;
}
第3个回答  2020-11-19

C语言经典例子之求100之内的素数

第4个回答  2008-04-27
#include<stdio.h>
#include<math.h>
void main(){
int i,j,k,t=0;
int T[100];
scanf("su shu in 0~100 is: \n");
for(i=2;i<=100;i++)
{k=sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0) break;
if(j>k) T[t++]=i;}
for (t=0;t<100;t++)
printf("%d",T[t]);
}

C语言程序设计题:用筛选法求100以内的素数
素数。在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。素数在数论中有着很重要的地位。比1大但不是素数的数称为合数。1和0既非素数也非合数。用筛选法求100以内的素数的源代码如下 include "stdio.h"include "stdlib.h"main(){ int i,j;for(i=2;i<99; i++){...

C语言编程:用筛选法求100之内的素数,
#include<stdio.h>#include<math.h>voidmain(){inti,t,m;for(m=1;m<=100;m=m+2){t=sqrt(m);for(i=2;i<=t;i++)if(m%i==0)break;if(i>t)printf("%disaprimenumber.\\n",m);elseprintf("%... #include <stdio.h>#include <math.h>void main(){ int i,t,m; for(m=1;m<=100;...

在C语言中,用筛选法求100之内的素数?用多种方法求,请附带流程图,谢谢...
void findPrimeLabel(int range,int *labelArray);int main(){ \/\/ 声明最大范围 int range;\/\/ 声明一个可以容纳比较多素数的数组 int primeArray[100];int i;printf("Input the max range:\\n");scanf("%d",&range);\/\/ 假设工作正常,那么primeArray所指向的就是一系列素数的指针,且最后-1...

C语言编程:用筛选法求100之内的素数,要求每隔10行输出。怎么写?_百 ...
j,tem,n;\\x0d\\x0afor(;;)\\x0d\\x0a{\\x0d\\x0asystem("cls");\\x0d\\x0aprintf("请输入要求素数的上限为:\\n");\\x0d\\x0ascanf("%d",&n);\\x0d\\x0aprintf("2");\\x0d\\x0afor(i=3;

用筛选法求100内的素数,每行输出10个。
:判断1-100之间有多少个素数,并输出所有素数。1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。2.程序源代码:include "math.h"main(){ int m,i,k,h=0,leap=1;printf("\\n");for(m=1;m<=100;m++){ k=sqrt(m+1);...

c语言程序编写 采用筛选法求100以内的所有素数
for(i=1;i<101;i++) \/\/初始化 a[i]=i; a[1]=0; for(i=2;i<=k;i++) \/\/筛选步长 for(j=i;j<=100;j+=i) a[j]=0; for(i=1;i<=100;i++) if(a[i]) printf("%d ",a[i]);}

用c语言编写程序,用筛选法求100之内的所有素数
include<stdio.h> main(){int i,j,sum=0;for(i=3;i<100;i++)for(j=2;j

编写一段C语言程序:应用数组并利用筛选法求出100之内的素数。
include<stdio.h> void main() { int i,j,b,a[100],n;n=0;for ( i=2;i<100;i++ ) { b=1; for ( j=2;j<=i\/2;j++ ) if ( i%j==0 ) {b=0;break;} if ( b!=0 ) {a[n]=i;n++;} } for ( i=0;i<n;i++ ) printf("%d ",a[i]); printf("\\n");...

c语言中用筛选法求素数
1和0既不是质数也不是合数。通过滤波法得到的100以内质数的源代码如下:#include"stdio.h"main()main(){ IntI,j。对于(I = 2;我< 99;我+ +){ 对于(j = 2;<我;J + +){ If(I%j==0){ 打破;} 如果(j==I-1){ Printf(“%4d”,I);} ...

用C语言,判断1-100之间有多少个素数,并输出所有素数。
可以使用筛法来判断 1-100 之间有多少个素数,并输出所有素数。筛法是一种通过枚举合数的因子来筛选出素数的方法。下面是用 C 语言实现的代码示例:include <stdio.h>#include <stdbool.h> define N 100 int main(void){ \/\/ 创建一个 bool 类型的数组,用来存储每个数是否为素数bool prime[N + ...

相似回答