LHX? 2019-10-18 16:35 采纳率: 50%
浏览 1952
已采纳

C++求前n个素数之和(循环语句的问题)?

求前n个素数之和(循环语句的问题)

题目描述

求前n个素数的和。

例如,前5个素数是2、3、5、7、11,它们的和是28。

输入

一个整数n,1<=n<=1000。

输出

前n个素数的和

样例输入

5

样例输出

28

提示

第1000个素数是7919。

#include <iostream>
using namespace std;
int main()
{
    int n,i,j,sum=0,flag,a[1000],k;
    cin>>n;
    while(a<n){
     for(i=2;i<=7919;i++){
   flag=0;
      for(j=2;j*j<=i;j++){
       if(i%j==0){
        flag=1;
        break;
    }
   }
   if(flag==0&&i!=1) {sum+=i;a++} 
  }
 }
 cout<<sum;
}

这里的a++好像没有起到作用是为什么??
最后输出的是前1000个素数的和
新手求教,拜托了

  • 写回答

3条回答 默认 最新

  • qtchen_1988 2019-10-18 17:55
    关注

    你的a是数组,a++是非法的

    #include <iostream>
    using namespace std;
    int main()
    {
        int n,i,j,sum,a;
        cin>>n;
    
        a = 0;
        i = 2;
        sum=0;
        while(a<n){
            for(j=2;j<=i;j++)
                if(i%j == 0)
                    break;
            if(j == i)
            {
                sum += i;
                ++a;
            }
            ++i;
        }
        cout<<sum;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度