1. 用c语言打印出1000以内的所有素数,要求编写并调用函 数func,函数功能是判断该数是否是素数,并将逻辑值返回给主函数,若为素数,则在主函数中打印,打印格式为每行10个。
时间: 2024-12-15 16:14:43 浏览: 18
在C语言中,我们可以编写一个名为`isPrime`的函数来判断一个数是否是素数,然后在一个主函数如`main`中调用这个函数并按照要求打印素数。下面是一个简单的实现示例:
```c
#include <stdio.h>
// 函数声明
int isPrime(int num);
// 主函数
int main() {
int i;
for (i = 2; i <= 1000; i++) {
if (isPrime(i)) { // 调用isPrime函数检查
printf("%d", i); // 如果是素数,打印
if ((i + 9) % 10 == 0) { // 每打印10个数换行
printf("\n");
} else {
printf(" "); // 保持每行10个数的格式
}
}
}
return 0;
}
// 判断是否为素数的函数实现
int isPrime(int num) {
if (num <= 1) {
return 0; // 1不是素数,返回0
}
for (int j = 2; j * j <= num; j++) {
if (num % j == 0) {
return 0; // 可以整除,不是素数,返回0
}
}
return 1; // 无因子,是素数,返回1
}
```
在这个代码中,`isPrime`函数会检查从2到`sqrt(num)`是否有能整除`num`的因子,如果有则返回0,表示不是素数;如果没有,返回1,表示是素数。主函数通过循环遍历1000以内的每个数,对每个数调用`isPrime`函数,如果是素数就打印出来。
阅读全文