求助,怎么用C语言编写程序计算并输出100~300之间全部素数的和?

已举报 回答
求助,怎么用C语言编写程序计算并输出100~300之间全部素数的和?
问在线客服
扫码问在线客服
  • 回答数

    2

  • 浏览数

    10,063

2个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
#include stdio.h
#includemath.h
int main (void)
{
int i,m,n,count;
count=0;
for(m=100;m=200;m++){
n=(int)sqrt(m);
for(i=2;i=n;i++){
if(m%i==0)break;
}

if(in){
printf(%d ,m);
count++;
if(count%10==0)
printf(\n);
}
}
printf(\n);
return 0;
}
取消 评论
算法简单,直接从500到1循环,判断每个数是否为素数,如果是素数,输出,并累加,一直判断出10个素数,终止循环,输出累加总数。
例程:
#includestdio.hint main(){ int prime; int prime_pti[100]; int prime_z=0; int i,n,p=0; int a,b; int step=0; for(prime=i=1;i=500;i++) /*找出500内的所有素数*/ { for(n=2;(n*n)=i;n++) /*判断一个数是否是素数*/ { if(i%n==0) { prime=0; break; } } if(prime) /*是素数就存储在数组中*/ { prime_pti[p]=i; p++; } prime=1; } for(a=0;ap-1;a++) /*从大到小排序素数数组*/ for(b=a+1;bp;b++) { if(prime_pti[a]prime_pti[b]) { step=prime_pti[a]; prime_pti[a]=prime_pti[b]; prime_pti[b]=step; } } if(p9) /*判断素数个数是否达到10,是则输出,否则退出。*/ { for(i=0;i10;i++) { if(i9) printf(%d+,prime_pti[i]); else { printf(%d=,prime_pti[i]); for(n=0;n10;n++) prime_z+=prime_pti[n]; printf(%d\n,prime_z); } } } else printf(Sorry!\n); return 0;}
取消 评论
ZOL问答 > UTM > 其他 > 求助,怎么用C语言编写程序计算并输出100~300之间全部素数的和?

相关产品

  • 金山KingGate UTM 100

    金山KingGate UTM 100

    参考价:¥39800    评分:-

    热门排行榜:未上榜

  • 京东搜一搜

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?