永发信息网

C语言 素数求和问题

答案:2  悬赏:50  手机版
解决时间 2021-11-22 06:25
C语言 素数求和问题
最佳答案
#include "stdio.h"
#include "math.h"
int main(void)
{
int count, i, m, n, sum;
int repeat, ri;
int prime(int m);
scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%d %d", &m, &n);
sum = count = 0;
for(i=m;i<=n;i++){
if(prime(i)==1){
sum=sum+i;
count++;}
}
printf("Count=%d,sum=%d\n",count,sum);
}
}
int prime(int m)
{
int i;
if(m==2)return 1;
if(m==1)return 0;
if(m>2){
for(i=2;i if(m%i==0)
return 0;}
return 1;//你的主要问题在这里,上面的for循环已经限定了i不会大于m的,你再用了一个if(i>=m)就不对了
}
}追问因为要判断素数,如果从2到m-1,m%i都不为0,那最后i++,i的值就变成m,由此判断m为素数。老师就是这么用的啊追答这样也可以,你的老师是对的,但你写错了,如果要这样的话if(i>=m)return 1;应该写在for循环外面,不然当i=m的时候for循环已经结束了,也就判断不了了
全部回答
我给你个代码,你自己参考一下
#include "stdio.h"
void main()
{
int i=0,j=0,k=0,l=0,m=0,n=0;
printf("m~n之间的素数:");
scanf("%d,%d",&m,&n);
for(j=m;j<=n;j++)
{
for(i=2;i<=j;i++)
{
if(j%i==0)
break;
}
if(i==j)
{k++;
l+=j;}
}
printf("有%d个素数\n",k);
printf("这些素数的和为:%d",l);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
书剑恩仇录小说为什么会有两个结局?哪位高人
枣木、檀木两者哪个价值高?
下雨了该吃什么
三星23,6寸显示屏怎么配cpu和主板?
有人知道这个用什么怎样才能夹在电机头上?
都说求人不如求自己,可怎么求自己?如题 谢
怎样往生满月光明佛的不动世界
美颐美可以加盟吗
求 MOVIE-BTOBMP3下载地址 O(∩_∩)O谢谢
梦幻西游 精武天神 那个区拿第一了#55
waitingforyou等你休闲吧地址在什么地方,我
求焦作市焦正文2009 46号文件
求读书致贫的纪录片百度云
容声冰箱控制面板的冷藏室短时间出现 F1 是什
孟凡利:伯里和哈蒙德的《希腊史》有何不同?
推荐资讯
我气质差吗?
1000克85千克1吨9800克10千克从大到小
长沙亚韩怎么样 好不好 口碑好吗
魅蓝E值得买吗
刺客乐队的介绍
花源女子养生会馆地址在什么地方,我要处理点
桂花糕好吃吗?
杜润有一款泥膜,能有效祛黑头么,美白效果怎
履淘网鞋包体验店地址在什么地方,想过去办事
赛欧加什么型号的机油
深圳的公交车“K”“M”“B”字头的是什么意
申请qq号免费立即申请
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?