本题第一篇题解
2025-11-08 18:38:33
发布于:浙江
22阅读
0回复
0点赞
声明:这个代码不是最优解,但是保证能过
请看代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,f=1,num=0,sum=0;//num是储存个数的,sum是判断素数的和是否大于n的
cin>>n;
for(int i=2;i<=n;i++)
{
for(int j=2;j<i;j++)
{
if(i%j==~0)//判断i是不是素数(编的时候不知道为什么等号和后面的字一直是黄色的,就加了个符号,做的时候不用加哦)
{
f=0;//是则f=0(1代表是素数,0代表不是)
}
}
if(f==1)//判断f是否等于1
{
sum+=i;//先把i储存起来,待会儿判断
if(sum>n)//判断sum+i是否大于n
{
break;//大于就跳出循环
}
cout<<i<<endl;//不大于就输出i
num++;//数量+1
}
f=1;//重置f
}
cout<<num;//输出数量
return 0;
}
觉得有用的点个赞吧
全部评论 2
这里

如果不仔细会错,写题解时应该确保代码完全无误,
并规范使用 Markdown 排版,详见Macw07的规范使用 Markdown 排版1周前 来自 浙江
0代码有误,请继续核对
1周前 来自 浙江
0已再次提交,是对的,你可以再检查一下自己的代码,谢谢。
1周前 来自 浙江
0













有帮助,赞一个