它说一旦输入并按回车,程序就停止工作了。但似乎找不到原因。
#include<stdio.h>
int main()
{
int n;
scanf("%d", &n);
int m,f,count,i;
m = 2;
count = 0;
while(m>=2){
f = 0;
for(i=0; i*i<m; i++){
if(m%i==0){
f = 1;
}
}
if (f==0){
count++;
}
if (count==n){
printf("%d", m);
break;
}
m++;
}
}
答案 0 :(得分:3)
for(i=0; i*i<m; i++){
if(m%i==0){
i
以0
开头,因此在m % i
中,您将数字除以零。
答案 1 :(得分:0)
m = 2;
// ...
while(m>=2){
// ...
m++;
}
while(m>=2)
没用,不是吗? BTW你听说过Sieve of Eratosthenes吗?