输入2个正整数m和n(m>=1,n<=500),统计并输出m和n之间的素数个数以及这些素数的和。素数就是只能被1和自身整除的正整数,最小的素数是2.要求调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0.#include<stdio.h>int x,a,result;double prime(x);int main(){int m,n,count=0,i,sum;scanf("%d",&m);scanf("%d",&n);for(i=m;i<=n;i++){if(prime(x)==1){count++;sum=sum+x;}}printf("count=%d,sum=%d",&count,&sum);return 0;}double prime(x){x=i;for(a=2;a*a<=x;i++)if(x%a==0)break;if(a*a>x)result=1;else result=0;return result;}编译不过 ,不知道哪错了。。
1 回答
胡子哥哥
TA贡献1825条经验 获得超6个赞
#include<stdio.h>
int x,a,result;
double prime(int x);//定义x的类型
int main()
{
int m,n,count=0,i,sum=0;//因为下面要自加所以要赋初值
scanf("%d",&m);
scanf("%d",&n);
for(i=m;i<=n;i++){
if(prime(i)==1)//是i不是m
{
count++;
sum=sum+i;
//printf(" %d",i);
}
}
printf("count=%d,sum=%d",count,sum);//不要取地址符号
return 0;
}
double prime(int x)
{
for(a=2;a*a<=x;a++)//这里的x就是i 函数调用时是把i传给x的
if(x%a==0)
break;
if(a*a>x)
result=1;
else result=0;
return result;
}
- 1 回答
- 0 关注
- 1592 浏览
添加回答
举报
0/150
提交
取消