#include <stdio.h>
int main() {
int arr[] = {2, 3, 6, 7, 11, 13, 17, 19}
int len = sizeof(arr) / sizeof(arr[0])
int flag
printf("The prime numbers in the array are: ")
for (int i = 0i <leni++) {
flag = 0
for (int j = 2j <= arr[i] / 2j++) {
if (arr[i] % j == 0) {
flag = 1
break
}
}
if (flag == 0 &&arr[i] != 1)
printf("%d ", arr[i])
}
return 0
}
该程序首先定义了一个整型数组arr,然后计算出数组长度len,接下来郑简通过嵌套循环遍历每个元素,判断该元素是否为素数,最后输出素数。其中,内层循环用于判断元素是否为素数猛哪,如果该元素可以被2到(i/2)之间的任意一个整数整除,则该元素不是素数。最后,如果flag值为0且该元素不是1,则表明该元素是素
源代码如下:
#include &ltstdio.h&gt
#include &ltmath.h&gt
void main()
{
int n=0, i, j,w,k
for(i=2i&lt=1000i++)
{
w=1
k=sqrt(i)
for (j=2j&lt=kj++)
if (i%j==0) {w=0break}
if (w) {
++n
if (n%10==0) printf("%d\n",i)
else printf("%d\t",i)
}
扩展资料
1、素数使用for循环查找2-1000以内的所有素激州数,循环次数为999次,在for循环中添迹世加一个移位寄存器用以存储所有的素数,其初始值为一个空数组。
2、在循环内部逐个数判断是否为素数,若是素数,则使用"数组插入.vi"函数添加到移明州蔽位寄存器的数组中,否则,移位寄存器中的值保留为上次的值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)