题目描述
输入 n 个不大于 10^5 的正整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。
输入格式
第一行输入一个正整数 n,表示整数个数。
第二行输入 n 个正整数,以空格隔开。
输出格式
输出一行,依次输出剩余的质数,以空格隔开。
参考代码:
#include <stdio.h>
#include <stdbool.h>
bool ispp(num)
{
if(num<2) return 0;
int a;
for(a=2;a<num;a++)
{
if(num%a==0) return 0;
}
return 1;
}
int main()
{
int n;
int arr[100];
scanf("%d",&n);
int i;
for(i=0;i<n;i++)
{
scanf("%d",&arr[i]);
}
int j;
for(j=0;j<i;j++)
{
if(ispp(arr[j]))
{
printf("%d ",arr[j]);
}
}
return 0;
}
本文介绍了一个简单的筛选质数的算法实现。通过输入一系列正整数,该算法能够判断哪些数为质数,并输出所有质数。文章提供了完整的C语言代码示例。
&spm=1001.2101.3001.5002&articleId=128256462&d=1&t=3&u=f2bb8212f1574100a879b8373c3cc540)
540

被折叠的 条评论
为什么被折叠?



