c语言break 请教
初学C语言,写了下面代码,但是break的用法跟书上不一样,调试的时候发现执行break之后,程序跳转到重新执行for循环,不知道是什么原因。代码如下。
程序代码:
void test14(void) { int x; int leap=1; int i,j; printf("输入一个正整数:"); scanf("%d",&x); printf("%d=",x); while(IsPrime(x)==0) { j=1; for(i=2;i<=x/2;i++) { if(x%i == 0) { printf("%d",i); j=0; } if(j=1) continue; else break; } x=x/i; if(IsPrime(x) == 0) printf("*"); } }
IsPrime是自己写的判断素数的函数
程序代码:
int IsPrime(int x) //判断输入x是否为素数 ,返回0表示不是素数。 { int i,leap=1; for(i=2;i<=x/2;i++) { if(x%i == 0) leap=0; } return leap; }