输出500到600之间所有素数,并求和,c语言

如题所述

#include<stdio.h>
 
int main()
{
 int a[101],i,j,b[101],sum=0;      
 for(i=0;i<101;i++)      //建立两个相同的数组1到100
 {
  a[i]=i+500;
  b[i]=i+500;
 }
 
 for(i=0;i<101;i++)   //如果a中的元素是素数,那么b中相应序号的元素的值将会变为0
 {
  for(j=2;j<a[i];j++)
  {
   if(a[i]%j==0)
    b[i]=0;
  }
 }
 
 for(i=0;i<100;i++)          
 {
  if(b[i]!=0)      //判断b中的元素是否等于0,不等于的时候输出a中序号相同的元素值
   {
     printf("%d\n",a[i]);   //输出素数
     sum+=a[i];    //将判断出来的素数相加
   }
 }
 printf("sum=%d\n",sum);
 return 0;
}

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答