#include<stdio.h>
int main()
{
int i;
int m;
int a=1;
for(i=100;i<=200;i++)
{
for(m=2;m<i-1;m++)
if(i%m==0)
break;
else
printf("%d ",i);
}
printf("\n");
return 0;
}
为什么这个程序运行后,里面的数据会重复输出,是什么原因?应该怎么改?
#include<stdio.h>
int main()
{
int i;
int m;
int a=1;
for(i=100;i<=200;i++)
{
for(m=2;m<i-1;m++)
if(i%m==0)
break;
else
printf("%d ",i);
}
printf("\n");
return 0;
}
为什么这个程序运行后,里面的数据会重复输出,是什么原因?应该怎么改?
因为你的printf()是在第二个for循环里面用的是if-else语句,所以第二个for循环中只要i%m==0不满足,它都会输出同一个i。具体情况可以关注我,我们私信讨论,随时回复