#include <stdio.h> // 标准输入输出头文件 #include <math.h> // 字符串操作头文件 int main() { int i,j,n,a[101]; // 初始化数组a,存放1到100的数字 for(i=1;i<=100;i++) a[i]=i; // 将数组第一个元素设置为0,不作为质数考虑 a[1]=0; // 根据质数定义,筛选出质数 for(i=2;i< sqrt(100);i++) for(j=i+1;j<=100;j++){ // 如果j能被i整除,则j不是质数,标记为0 if(a[i]!=0&&a[j]!=0) if(a[j]%a[i]==0) a[j]=0; } printf("\n"); // 打印出所有非0元素,即质数 for(j=2,n=0;j<=100;j++){ if(a[j]!=0){ printf("%5d",a[j]); // 每个数占5个位置,保持输出格式整洁 n++; } // 每打印10个数换一行 if(n==10){ printf("\n"); n=0; } } printf("\n"); return 0; // 程序正常结束 }
C语言 数组——数组的其他应用之筛法求素数
2024-04-05 02:52:02 7 阅读