求100到200之间的素数,5个一换行,最后求和,c语言

2024-12-05 04:29:59
推荐回答(4个)
回答1:

#include

#include

int main()

int i,a,flag,sum=0,t=0; 

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

flag=1; 

for(a=2;a<=sqrt(i);a++) 

{if(i%a==0){flag=0;break;}} 

if(flag==1) 

{

if(t%5==0) printf("\n");

printf("%d\t",i); 

sum=sum+i;

t=t+1;}

}

printf("sum is %d",sum);

printf("\n");

return 0; 

以上是你需要的代码,复制后直接在VC++6.0环境下运行就可以!

结果图示:

具体你可以去http://zhidao.baidu.com/link?url=lECnESKm-mvxYwE6FLOK9QPxSjIy2vSCiws2QZ3FyxdNs7fuUFrzKASO35XmznHkpCjj6d-hwrqc3LSJa9Wnuq看他们的回答,还有很好的扩展!!!!!!!!!!!!!!!

希望采纳,谢谢

回答2:

1 遍历100到200所有整数;

2 对每个数判断是否是素数,如是,则输出,5个一行。

3 同时对素数进行累加。

4 输出和。

代码:

#include 
#include 
int is_prime(int n)
{
    int i;
    for(i = 2; i <= sqrt(n); i ++)
        if(n%i==0) return 0;
    return 1;
}

int main()
{
    int i,s=0, c = 0;
    for(i = 100; i <=200; i ++)
    {
        if(is_prime(i))
        {
            printf("%d ", i);
            c ++;
            if(c %4 == 0) printf("\n");
            s+=i;
        }
    }
    
    printf("\nsum=%d\n",s);
}

回答3:

#include 
#include 
#include
int isSuShu(int n)
{
int i = 0;
if (n <= 0)
{
return 0;
}
else if (n == 1 || n == 2 || n == 3)
{
return 1;
}
else
{
for (i = 2; i <= sqrt((double)n); i++)
{
if (n%i == 0)
{
return 0;
}

}
return 1;

}

}
int main()
{
int i = 0;
int count = 0;
for (i = 1; i <= 200; i++)
{
if (isSuShu(i))
{
count++;
printf("%d\t", i);
if (count % 5 == 0)
{
puts("\n");
}
}

}

system("pause");
return 0;
}

回答4:

#include"stdio.h"
#include"math.h"
void main()
{
int m;
int z;
int sum=0;
int j=0;
for(int num=99;num<=200;num+=2)
{
m=2;
z=sqrt(num);
for(;m<=z;m++)
{
if(num%m==0)
{
break;
}
}
if((m-1)==z)
{
sum+=num;
j++;
printf("%d\t",num);
if(j%5==0)
{
printf("\n");
}
}
}
printf("\n100~200素数的和是%d\n",sum);
}

代码如上!