int main (){
int max;
scanf("%d",&max);
int x;
for (x=2;x<max;x++){
int i;
int std=1;
for(i=2;i<x;i++){
if (x%i==0){
std=0;
break;
}
if (std==1){
printf("%d ",x);
}
}
}
return 0;
}
你的最后一个if语句位置错了
参考代码:
#include <stdio.h>
int main (){
int max;
scanf("%d",&max);
int x;
for (x=2;x<max;x++){
int i;
int std=1;
for(i=2;i<x;i++){
if (x%i==0){
std=0;
break;
}
}
if (std==1){ //这个if语句应该在第二个for循环外面
printf("%d ",x);
}
}
return 0;
}