求第n个素数到第m个素数的和

#include<stdio.h>
#include<math.h>
//求第n个到第m个素数的和 
int main()
{
	int n,m;
	int flag = 0;
	int sum = 0;
	int j = 0;
	int isPrime_1(int n);
	scanf("%d %d",&a,&b); 
	for(int i = 2; flag < m; i++)    //控制循环只找到第m个素数
	{
		j = isPrime_1(i);
		if (0 == j)
		{
			continue;
		}
		else
		{
			flag++;        //素数计数器,表示是第几个素数
			if(flag >= n)    //从第n个素数开始求和
			{ 
				sum += i;
			}
		}
			
	}
	printf("%d",sum);
	
	
	
	
	return 0;
}
int isPrime_1(int n)        //是素数返回1,否则返回0
{
	int i = sqrt(n);
	int a = 1;
	for(int j = 2; j <= i; j++)
		{
			if(0 == n % j)
			{
				a = 0;	
				break;
			}
		}
	return a;
}

posted @ 2018-04-25 15:20  zy010101  阅读(604)  评论(0编辑  收藏  举报