C 语言 编程 输入2个正整数m和n(m>1,n<=500),统计并输出m和n之间的素数个数以及这些素数的和。
【问题描述】输入2个正整数m和n(m>=1,n<=500),统计并输出m和n之间的素数个数以及这些素数的和。素数就是只能被1和自身整除的正整数,最小的素数是2.要求调用函...
【问题描述】输入2个正整数m和n(m>=1,n<=500),统计并输出m和n之间的素数个数以及这些素数的和。素数就是只能被1和自身整除的正整数,最小的素数是2.要求调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0.
【输入形式】
【输出形式】
【样例输入】1,10
【样例输出】count=4,sum=17
【样例说明】1到10之间有4个素数:2,3,5,7
要严格按照样例输出完成 展开
【输入形式】
【输出形式】
【样例输入】1,10
【样例输出】count=4,sum=17
【样例说明】1到10之间有4个素数:2,3,5,7
要严格按照样例输出完成 展开
2个回答
展开全部
#include "stdio.h"
void main()
{
int prime(int m);
int m =0,n=0;
scanf("%d,%d", &m,&n);
int max = 0, min = 0;
max = m > n? m:n;
min = m> n?n:m;
int i = 0,count = 0, sum = 0;
for (i = min + 1; i < max; i++)
{
if (1 == prime(i))
{
sum += i;
count++;
}
}
printf("count=%d,sum=%d\n",count,sum);
}
int prime(int m)
{
if (2 == m)
{
return 1;
}
int i ;
for (i = 2; i < m; i++)
{
if (m % i == 0)
{
break;
}
}
if (m == i)
{
return 1;
}
else
{
return 0;
}
}
void main()
{
int prime(int m);
int m =0,n=0;
scanf("%d,%d", &m,&n);
int max = 0, min = 0;
max = m > n? m:n;
min = m> n?n:m;
int i = 0,count = 0, sum = 0;
for (i = min + 1; i < max; i++)
{
if (1 == prime(i))
{
sum += i;
count++;
}
}
printf("count=%d,sum=%d\n",count,sum);
}
int prime(int m)
{
if (2 == m)
{
return 1;
}
int i ;
for (i = 2; i < m; i++)
{
if (m % i == 0)
{
break;
}
}
if (m == i)
{
return 1;
}
else
{
return 0;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询