m为止 ,从2开始是因为2是第一个素数 { int isprime=1;//isprime._大学moocc语言素数求和">
赞
踩
- #include <stdio.h>
- int main()
- {
- int n,m;
- scanf("%d %d",&n,&m);
- int flag=1;//flag表示素数所累积的个数,要求flag在nm之间
- int sum=0;
- int i=2;
- for(i=2;;i++)//i代表了从2开始无限制的循环,若i是素数则相加,如不是则继续循环,直到flag>m为止 ,从2开始是因为2是第一个素数
- {
- int isprime=1;//isprime用来判断i是否为素数,如果是则为1.
- if(flag>m)
- {
- break;
- }
- int j=2;//j用来帮助判断素数
- for(j=2;j<i;j++)
- {
- if(i%j==0)
- {
- isprime=0;
- break;
- }
- }
- if(isprime==1&&flag>=n)//如果i为素数并且 flag>=n,sum的值才会改变
- {
- sum=sum+i;
- }
- if(isprime==1)//否则仅仅是素数的累计个数加1
- {
- flag++;
- }
-
- }
- printf("%d",sum);
- return 0;
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。