请问在c语言中,输出俩个数之间所有的素数,这段代码为什么只能输出2,无法输出其他素数

请问在c语言中,输出俩个数之间所有的素数,这段代码为什么只能输出2,无法输出其他素数

将第18行与第19行代码放到第二个for循环后面,然后其他地方修改下即可。
修改如下:
#include <stdio.h>
int main(void){
int i,j,m;
scanf("%d %d",&i, &j);
// if(i==2){
// printf("%d",i);
// ++i;
// }
// 这里for循环的起始条件i>2可以去掉,因为对程序执行无影响
for(;i<=j;++i){
for(m=2;m<i;++m){
if(i%m==0){
break;
}
}
// 将打印2的输出放到for循环中,以便按格式打印结果
if(i==2){
printf("%d",i);
}
// 这里判断是否为素数,放到第二个for循环后面,即当区间2到(i-1)之间所有的数都不能整除i,则i是素数
// 为了打印输出结果中的逗号,当m不为2,且m==i时, 先输出一个逗号,再输出素数i
if(m==i&&m!=2){
printf(",%d",i);
}
}
return 0;
}
