新人没有C币请见谅 帮助之恩择日再还
题目:
题目内容:
我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。
现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
注意:是第n个素数到第m个素数,不是n和m之间的素数!
输入格式:
两个正整数,第一个表示n,第二个表示m。
输出格式:
一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
输入样例:
2 4
输出样例:
15
时间限制:500ms内存限制:32000kb
这是一道在mooc上的练习题
我做的是:
#include
int main ()
{
int m,n,i;
int x=2;
int sub=0;
int cnt=0;
int subm,subn;
scanf ("%d d",&m,&n);
do{
int ture=1;
for(i=2;i<x;i++){
if(x%i==0){
ture=0;
break;
}
}
if(ture){
sub+=x;
if(cnt+1==n){
subm=sub;
}
cnt++;
}
x++;
}while(cnt!=n);
subn=sub;
printf("%d",subn-subm);
return 0;
}
用的编译器是devc++ 一直提示Id returned 1exid status,无法编译;
然后用CFREE试了一下,可以编译,但是输入m和n两个数据后,一直没有输出;
我想了半天没有想到原因,求大神帮忙,不胜感激