素数【问题描述】从控制台输入整数nn=1计算并输出从1到n之间包括n个位为1的所有素数若没有符合要求的素数则输出-1。【输入形式】从控制台输入整数n。【输出形式】按照从小到大的顺序在一行上输出1到n之间包括n个位为1的所有素数素数之间用一个空格分隔若没有符合要求的素数则输出-1。【样例输入】120【样例输出】11 31 41 61 71 101【样例说明】输入的整数n为1201到120之间个位为1
#include <stdio.h>
int is_prime(int n) {
if (n <= 1) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
scanf("%d", &n);
int count = 0;
for (int i = 1; i <= n; i++) {
if (i % 10 == 1 && is_prime(i)) {
count++;
printf("%d ", i);
}
}
if (count == 0) {
printf("-1");
}
return 0;
}
原文地址: https://www.cveoy.top/t/topic/hOuL 著作权归作者所有。请勿转载和采集!