求素数这个程序只是为了说明break
和continue
的用法才这么写的,其实完全可以不用break
和continue
,请读者修改一下控制流程,去掉break
和continue
而保持功能不变。
分别使用while和for写了两种,代码如下:
while:
#include<stdio.h> 2 /*求0到100内的素数*/ 3 4 /*判断一个数是不是素数*/ 5 int is_prime(int n) 6 { 7 int i=2; 8 while ( n%i!=0 ) 9 i++; 10 if ( n==i ) 11 printf( "%d\n",n ); 12 return 0; 13 } 14 15 /*打印出从0到100的素数*/ 16 int main() 17 { 18 int i=2; 19 while ( i<=100 ) 20 { 21 is_prime(i); 22 i++; 23 }
for:
1 #include<stdio.h> 2 /*求0到100内的素数*/ 3 4 /*判断一个数是不是素数*/ 5 int is_prime(int n) 6 { 7 int i; 8 for ( i=2;n%i!=0;i++ ); 9 if ( n==i ) 10 printf( "%d\n",n ); 11 return 0; 12 } 13 14 /*打印出从0到100的素数*/ 15 int main() 16 { 17 // printf ( "1\n" ); 18 int i; 19 for ( i=2;i<=100;i++ ) 20 is_prime(i); 21 return 0; 22 }
原文:http://blog.csdn.net/whorus1/article/details/19485501