.编写函数int isprime(int a),用来判断整数a是否为素数,若是素数,函数返回1,否则返回0。调用该函数找出任意给定的,n个整数中的素数。注意,1不是素数。 输入格式: 一系列待判断的正整数,以空格隔开,以0表示输入结束。 输出格式: 素数判断 只输出输入的正整数中的素数,顺序和输入一致。数据间以个英文空格隔开,最后一 个数据后没有空格。注意,1不是素数。
时间: 2023-06-13 17:02:31 浏览: 140
函数 可以判断一个数是不是素数
以下是该题的代码实现:
```c
#include <stdio.h>
int isprime(int a) {
if (a <= 1) { // 1不是素数
return 0;
}
for (int i = 2; i * i <= a; i++) { // 判断a是否能被2~sqrt(a)之间的数整除
if (a % i == 0) {
return 0;
}
}
return 1; // a是素数
}
int main() {
int n;
while (scanf("%d", &n) && n != 0) { // 循环读入整数,直到读入0
if (isprime(n)) { // 判断n是否是素数
printf("%d ", n); // 输出素数
}
}
return 0;
}
```
该程序首先定义了一个 `isprime` 函数,用来判断一个整数是否为素数。接着在 `main` 函数中,循环读入整数,直到读入0。每读入一个整数,就调用 `isprime` 函数判断其是否为素数。如果是素数,就输出该整数。最后程序结束。
阅读全文