C语言 利用函数计算素数个数并求和

时间:2025-04-27 07:18:22

 素数就是只能被1和自身整除的正整数,例如,1不是素数,2是素数。输入两个正整数m和n(1<=m,n<=500),统计并输出m到n之间的素数的个数以及这些素数。

要求定义并调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0

#include<>
#include<>
int prime(int n)
{
	int x, y;
	y = (int)sqrt((float)n);
	for (x = 2; x <= n; x++)
	{
		if (n % x == 0)
			break;
	}
	if (x > y)
		return 1;
	else return 0;
}
int main()
{
	int m, n,i,z;
	int sum = 0, count =0;
	printf("请输入两个正整数(1-500):");
	scanf_s("%d %d", &m,&n);
	for (i = m;i <= n;i++)
	{
		z = prime(i);
		while (z ==1)
		{
			sum += i;
			count++;
			z = 0;
		}
	}
	printf("%d\n", sum);
	printf("%d\n", count);
	return 0;
}