C语言素数怎么表示 10

 我来答
爱教育爱学习
高粉答主

2019-11-21 · 学而不思则罔,思而不学则殆
爱教育爱学习
采纳数:384 获赞数:112740

向TA提问 私信TA
展开全部

#include<stdio.h>

#include<math.h>

intmain()

{

intx,i,j=0,k;

for(x=101;x<=200;x++)

{

for(i=2,k=0;i<=sqrt(x);i++)

if(x%i==0)

{

k++;

break;

}

if(k==0)

{

printf("%d",x);

j++;

}

}

printf("\n100到200之间有%d个素数\n",j);

}

扩展资料

100->200之间的素数的个数,以及所有的素数

#include<stdio.h>

#include<math.h>

intmain()

{

inta,m,k,i;

a=0;

for(i=101;i<=200;i++)

{

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

if(i%k==0)break;

if(k>=i)

a++;

}

printf("%d\n",a);

for(i=101;i<=200;i++)

{

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

if(i%k==0)break;

if(k>=i)

a++;

if(k>=i)

printf("%d",i);

}

printf("\n");

return0;

}

小夏聊生活
高能答主

2019-11-23 · 专注于分享生活知识,热爱生活
小夏聊生活
采纳数:448 获赞数:114618

向TA提问 私信TA
展开全部

#include<iostream>
#include<cmath>
using namespace std;

int main()
{
int num = 0,i=0;
cin>>num;
for(i = 2;i<=sqrt(num);i++)
{
if(num%i==0)
break;
}
if(i>sqrt(num)
cout<<num<<"为素数"<<endl;
else
cout<<num<<"不是素数"endl;
return 0; 
}

扩展资料

C语言回文素数代码

#include<stdio.h>
int main()
{
int i,j;
int m,n,p;
for(i=11;i<1000;i++)
{
if(i>=11&&i<=99)
{
m=i%10;
n=i/10;
}
else
{
m=i/100;
n=i%10;
}

if(m==n)
{
for(j=2;j<i/2;j++)
if(i%j==0)
break;
if(j>=i/2)
{
printf("%d ",i);

}
}
return 0;
}

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
三大校友
2012-05-08 · TA获得超过434个赞
知道小有建树答主
回答量:397
采纳率:0%
帮助的人:232万
展开全部
#include<stdio.h>
void main()
{
int m,n,flag=1;
printf("请输入要测试的整数:");
scanf("%d",&n);
for(m=2;m<=n/2;m++)
if(n%m==0)
{
flag=0;//设置非素数标志
break;//一旦找到一个m,断定该n非素数,无需验证
}
flag?printf("%d是素数\n",n):printf("%d不是素数\n",n);

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
洛素羽X
2020-08-30
知道答主
回答量:15
采纳率:100%
帮助的人:1.7万
展开全部
除了以上方法以外,还可以用空间换时间的方法加快速度。
#include <iostream>

#define N 100//这里的100是素数上限。即生成素数范围是1~100,可更改此数值
using std::cin;
usint std::cout;
using std::endl;

bool book[N];//用布尔节省空间

int main()
{
bool[1]=true;//true表示不是素数

for(int i=2;i*2<=N;i++)
{

if(bool[i])

continue;

for(int j=i*2;j<=n;j+=i)

bool[j]=false;

}

return 0;

}
代码完毕,十分简短,可以将时间复杂度从O(n^3)降到O(n^2)。唯一的缺点就是比较耗内存
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天才的机场
推荐于2017-11-28 · TA获得超过261个赞
知道小有建树答主
回答量:273
采纳率:0%
帮助的人:167万
展开全部
#include <stdio.h>
#include <math.h>

int main()
{
int a;
int isp=1;

printf("请输入需要判断的大于1的正整数:\n");
scanf("%d",&a);

for(int i=2;i<sqrt(a);i++)
{
if(a%i==0)
{
isp=0;
break;
}

}

if(isp==1)
printf("%d 是素数\n",a);
else
printf("%d 不是素数\n",a);
return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式