输出10000内所有素数
不用函数方法:
1 #include <stdio.h> 2 /* 当函数返回值为1的时候是素数 3 当函数返回值为0的时候不是素数*/ 4 int panduan(int n) 5 { 6 int i=2,j=1; 7 while(i<=n/2) 8 { 9 if(n%i==0) 10 j=0; 11 i++; 12 } 13 return j; 14 } 15 16 17 18 int main() 19 { 20 int i=2; 21 int k=0; 22 while(i<10000) 23 { 24 if(panduan(i)) 25 { 26 printf("%6d",i); 27 k++; 28 if(k%5==0) 29 printf("\n"); 30 } 31 i++; 32 } 33 }
利用函数方法:
#include<stdio.h> int main() { int i=2,jishu,j,k=0; while(i<10000) { jishu=0; j=2; while(j<=i/2) { if(i%j==0) jishu++; j++; } if(jishu==0) { printf("%6d",i); k++; if(k%5==0) printf("\n"); } i++; } printf("\n\n一共有%d个素数\n",k); }