编写一个c程序200以内的所有素数 把200以内的所有素数存放到一维数组中并输出输出说明 200以内的所有素数
时间: 2024-01-19 10:16:26 浏览: 96
求200以内的所有素数的简单算法!
以下是C语言编写的求200以内所有素数的程序,将素数存放到一维数组中并输出:
```c
#include <stdio.h>
#include <math.h>
#define N 200
int main() {
int i, j, a[N], count = 0; // 定义变量,count表示素数的个数
for (i = 2; i < N; i++) { // 用循环给a[200]赋值
a[i] = i;
}
for (i = 2; i < N; i++) { // 将每个a[i]的值除以比它小的每一个数,如能整除就说明不是素数,将其赋值成0
for (j = 2; j <= sqrt(i); j++) {
if (a[i] != 0 && a[j] != 0 && a[i] % a[j] == 0) {
a[i] = 0;
break;
}
}
}
for (i = 2; i < N; i++) { // 进入循环,如果a[i]!=0,输出a[i]的值即所求素数
if (a[i] != 0) {
printf("%d ", a[i]);
count++;
}
}
printf("\n共有%d个素数", count); // 输出素数的个数
return 0;
}
```
输出结果为:
```
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199
共有46个素数
```
阅读全文