输入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
英文字母区分大小写。必须严格按样例输入输出。 展开
输入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
英文字母区分大小写。必须严格按样例输入输出。 展开
1个回答
展开全部
您好,这样的:
#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;
}
#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;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询