输入2 个正整数m和n(1<=m,n<=500),统计并输出m 和n之间的素数的个数以及这些素数的和。

我的答案溢出了....#include<stdio.h>intprime(intm){inti,k;if(m<2)return0;k=i/2;for(i=2;i<=k;i... 我的答案溢出了....
#include<stdio.h>
int prime(int m)
{
int i,k;
if(m<2)return 0;
k=i/2;
for(i=2;i<=k;i++){
if(m%i==0)
return 0;
}
return 1;
}
int main(void)
{
int m,n,count,sum;
printf("Input m:");
scanf("%d",&m);
printf("Input n:");
scanf("%d",&n);
for(m;m<=n;m++){
if(prime(m)==1){
count++;
sum=sum+m;
}
}
printf("Count=%d\n,sum=%d\n",count,sum);
return 0;
}
展开
 我来答
笑年1977
推荐于2016-12-02 · TA获得超过7.2万个赞
知道大有可为答主
回答量:2.2万
采纳率:81%
帮助的人:1.2亿
展开全部
#include<stdio.h>
int prime(int m)
{
int i,k;
if(m<2)return 0;
k=m/2; //把i改成m
for(i=2;i<=k;i++){
if(m%i==0)
return 0;
}
return 1;
}
int main(void)
{
int m,n,count,sum=0; //sum要赋初值
printf("Input m:");
scanf("%d",&m);
printf("Input n:");
scanf("%d",&n);
for(m;m<=n;m++){
if(prime(m)==1){
count++;
sum=sum+m;
}
}
printf("Count=%d,sum=%d\n",count,sum); //中间的\n去掉,不好看
return 0;
}
追问
不行啊  我获得的count 溢出了

谢谢 我看到了 count没有初值
追答
你真厉害啊,一下就看出问题了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式