请用C++编写一个程序:找到2~100中所有的质数。(素数) 一行一个素数

如题所述

#include <iostream>
using namespace std;
int main()
{
int m,i,k,n=0;/*n作计数器*/
for(m=1;m<=100;m=m+2)
{
k=1;//标志变量,预设为1,一旦变成0表示不是素数
for(i=2;i<=m/2;i++)
if(m%i==0)
{
k=0;
break;
}
if(k==1)
cout << m << (++n%10==0?'\n':'\t');//是素数则输出并控制一行10个
}
cout << endl;
}
温馨提示:内容为网友见解,仅供参考
第2个回答  2010-12-10
#include<stdio.h>

int sushu(int m)
{
int n,i;
n=m/2;
for(i=2;i<n+1;i++)
if(m%i==0)
return 0;
return 1;
} //判断是否为质数,1为是,0为不是

int main(void)
{
int k;
for(k=2;k<=100;k++)
if(sushu(k)) printf("%d\n",k); //运用自定义函数sushu()判断是否为质数
return 0;
}

你试试看,应该没问题(如果你的C++软件没出什么是的话)
第3个回答  2010-12-08
#include<iostream>
using namespace std;
int main()
{
for(int i=2;i<=100;i++)
{
int total=0;
for(int j=1;j<i;j++)
{
if(i%j==0)
total+=j;
}

if(total==1)//素数的小于它自身的因子只有1,由此判定。
cout<<i<<endl;
}
return 0;
}

请用C++编写一个程序:找到2~100中所有的质数。(素数) 一行一个素数
int m,i,k,n=0;\/*n作计数器*\/ for(m=1;m<=100;m=m+2){ k=1;\/\/标志变量,预设为1,一旦变成0表示不是素数 for(i=2;i<=m\/2;i++)if(m%i==0){ k=0;break;} if(k==1)cout << m << (++n%10==0?'\\n':'\\t');\/\/是素数则输出并控制一行10个 } cout << endl...

如何用c++输出从2开始的连续100个素数
素数是一个大于1的自然数,除了1和其本身外,不能被其他自然数整除的数。C++从2开始输出连续的100个素数,则只需要从2开始往后循环,如果该数是素数,则输出,并统计加一,统计够100个素数时跳出循环即可。示例代码:include <stdio.h>bool is_prime(int n){ int i; for (i = 2; i*i...

用C#语言求100以内的质数
for(i=2;i<101;i++)我是计算2到100间的质数~所以我前面加了个printf("1\\n");这样就是1到100。然后呢 for(j=2;j<=i;j++){ if(j==i) printf("%d\\n",i);if(!(i%j))break;} 我让2到100一个数一个数的开始计算。就上面这个。if(j==i) printf("%d\\n",i);这个是如果这...

请用C++编写一个程序:找到3~100中所有的质数。
<iostream> using namespace std;int main(){ int m,i,k,n=0;\/*n作计数器*\/ for(m=1;m<=100;m=m+2){ k=1;\/\/标志变量,预设为1,一旦变成0表示不是素数 for(i=2;i<=m\/2;i++)if(m%i==0){ k=0;break;} if(k==1)cout << m << (++n%10==0?'\\n':'\\t');\/...

求C++编程:求从2开始连续100个素数
{ int m,i,k,h=0,leap=1;printf("\\n");for(m=101;m<=100000;m++){ k=sqrt(m+1);for(i=2;i<=k;i++){ if(m%i==0){ leap=0;break;} } if(leap){ printf("%-4d",m);h++;if(h == 100)break;if(h%10==0)printf("\\n");} leap=1;}printf("\\nThe total is...

C++ 求1到100所有质数共有几个
质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。了解质数后, 我们就可以根据其特点进行编程开发了。下面直接上程序:int main(){ int i; int iCount = 0; \/\/质数的个数 for(i=2;i<=100;i++) { int k=0; ...

用C++取1到100的质数
include <stdio.h> void main(){ int a,b;for(a=2;a<=100;a++) \/\/取100以内所有的数 { for(b=2;b=a) \/\/当条件为真则为质数 printf("%5d",a);} }

用c++求100以内的素数
} if(j>m) \/\/如果j的循环检查中,没有找到i的因数,则此时j=m+1>m,说明i是质数 { cout<<i<<"\\t";sum++;if(sum%5==0)cout<<endl;\/\/输出5个素数就换行一次 } 关于为什么只需要验证到m就可以确定一个数是不是质数,原理如下:x = a * b ;a <= 根号x b >=根号x 这个...

用c++编程 求2—100之间的素数
改变程序中的MaxNumber的值,可以得到任何范围的素数.include<iostream> include<math.h> const int MaxNumber=100;using namespace std;void main(){ int a[MaxNumber+1]={0},sq,i,j;sq=sqrt(MaxNumber);\/\/需要循环的次数为最大值的开方 for(i=2;i<sq;i++){ if(a[i])continue;\/\/...

《将100~200之间的素数输出》这个程序用c++语言怎么编程
我就给出伪代码吧!bool SuShu(int n){ for( int i = 3; i<n; i++)if( n%i == 0 )return 0;return 1;} void main(){ for( int i=101; i < 200; i+=2)if(SuShu(i))cout<<i<<std::ends;} 因为偶数(除2以外)都不是素数,所以直接排除偶数 然后判断是否素数,看能否找...

相似回答