求1000以内最大的20个素数之和。 C语言编程 怎么做

 我来答
百度网友6fe74e2
2013-11-28 · TA获得超过6593个赞
知道大有可为答主
回答量:1973
采纳率:100%
帮助的人:260万
展开全部
#include "stdio.h"
int isprime(int n)//判断n是否搜庆高是素数,是,返回1,不是返回0
{
  int i;
  for(i=2;i<=n/2;i++)
     if(n%i==0)
       return 0;
  return 1;     
}
int main()
{
   int sum=0,count=0,i;
   for(i=1000;i>2;i--)
 差宽    if(isprime(i)==1)
     {
         //1000以内最大素数,那就从1000开始到2,去找20个素数就行
         sum+=i;
         count++;
         if(count==20)
           break;
     }
   printf("求1000以内最大的20个素数之和为世尺:%d\n",sum);  
}

结果:

White_MouseYBZ
2013-11-29 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6595万
展开全部
//岁敏#include "stdafx.h"//vc++6.0加上这一凯穗行.
#include "stdio.h"
void main(void){
int i,j,sum,n,x;
for(sum=n=0,i=999;n<20;i-=2){
for(j=3;(x=j*j)<=i;j+=2)
if(i%j==0) break;
if(x>盯雀卜i){
sum+=i;
n++;
}
}
printf("The sum of 20 largest prime number in 1000 is %d.\n",sum);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
insideing
2013-11-28 · 超过31用户采纳过TA的回答
知道答主
回答量:86
采纳率:0%
帮助的人:53万
展开全部
代码:
Private Function isprime(ByVal n As Integer) As Boolean
For i = 2 To n - 1
If (n Mod i) = 0 Then
isprime = False
Exit Function
End If
Next
isprime = True
End Function

Private Sub Form_Load()
i = 0
j = 1000
Do While j >游冲拍= 1
If isprime(j) Then
i = i + 1
MsgBox "1000以判镇内第"神羡 & i & "大的质数是" & j
If i >= 10 Then Exit Do
End If
j = j - 1
Loop
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mafangsan
2013-11-28 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1万
采纳率:71%
帮助的人:2577万
展开全部
这册陆森个程序比较好的做法,其实是用筛州亩法找出1-1000之间的素数,然后把最大的20个加起来,比前面回答的效率高好多。

关于筛悉漏法,你可以去百度一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式