输入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。

【输入形式】

输入2个正整数m和n,要求m≥1,n≤500

【输入输出样例1】(下划线部分表示输入)

Input m: 1

Input n: 10

count=4, sum=17

【样例说明】

输入提示符后要加一个空格。例如“Input m:
”,其中“:”后要加一个且只能一个空格。

输出语句的“=”两边无空格, count=4的逗号后有一个空格,然后是sum=17

英文字母区分大小写。必须严格按样例输入输出。
展开
 我来答
山水阿锐
推荐于2017-05-23 · TA获得超过34.3万个赞
知道顶级答主
回答量:23.7万
采纳率:91%
帮助的人:3.2亿
展开全部
您好,这样的:
#include <stdio.h>

int prime(int m) //判断一个数是否是素数
{
int i;
for(i=2; i<=m/2;i++)
if (m%i==0) return 0;
return 1;
}

int main(int argc, char* argv[])
{
int m, n;
int cnt = 0; //用于保存素数的个数
int sum = 0; //用于保存所有素数的和
printf("请输入两个整数:");
scanf("%d %d", &m, &n);
if (m>n)
{
printf("第二个数必须不小于第一个数!\n");
return 0;
}
int i = m;
for (i; i<=n; i++)
{
if (prime(i))
{
cnt++;
sum += i;
}
}

printf("%d和%d之间的素数个数:%d 和:%d\n", m, n, cnt, sum);

return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式