题目描述
判断[ k1,k2]之间有多少个素数(包含k1和k2),并输出这些素数。 ( 1 <= k1 < k2 <= 1000 )
输入要求
输入两个正整数k1和k2。
输出要求
输出两行信息,第一行是[k1,k2]之间素数个数,第二行输出所有素数。素数之间用空格分开。
#include<stdio.h>
int main()
{
int a[1000] = {}, x, y,n=0;
scanf_s("%d%d", &x, &y);
for (int i = x; i <= y; i++) {
int e = 0;
for (int p = 2; p < i; p++) {
if (i % p == 0)e = 1;
}
if (e == 0&&i!=1) {
a[n] = i;
n++;
}
}
printf("%d\n", n);
for (int i = 0; i < n-1; i++) printf("%d ", a[i]);
printf("%d\n",a[n-1]);
}