c语言判定一个数是否为素数
时间: 2024-06-12 10:08:37 浏览: 16
判定一个数是否为素数的C语言代码可以有多种实现方法。其中,一种常用的方法是通过遍历2到n-1的所有数,判断是否能被整除来确定。如果存在能整除的数,则该数不是素数;如果不存在能整除的数,则该数是素数。
下面是一个示例代码:
```
#include<stdio.h>
int main() {
int i, n;
scanf("%d", &n);
if (n <= 2) {
printf("%d不是素数\n", n);
} else {
for (i = 2; i <= n - 1; i++) {
if (n % i == 0)
break;
}
if (i >= n)
printf("%d是素数\n", n);
else
printf("%d不是素数\n", n);
}
return 0;
}
```
该代码会读取一个整数n,然后通过遍历2到n-1的数,判断n是否能被整除,最后输出结果。
相关问题
用c语言编写函数 fun,用以判定一个数是否为素数,提示: 可在函数中设置个逻辑量,并把该值返回给调用者·
以下是用 C 语言编写的判断素数的函数:
```c
#include <stdio.h>
int isPrime(int num) {
int i;
// 判断是否小于 2,小于 2 不是素数
if (num < 2) {
return 0;
}
// 判断是否为 2
if (num == 2) {
return 1;
}
// 判断是否为偶数,偶数不是素数
if (num % 2 == 0) {
return 0;
}
// 判断是否为奇数
for (i = 3; i < num; i += 2) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
if (isPrime(n)) {
printf("%d是素数\n", n);
} else {
printf("%d不是素数\n", n);
}
return 0;
}
```
函数中使用了一个逻辑量,即 `num` 是否为素数。如果是素数,则返回 1,否则返回 0。在主函数中调用该函数,并根据返回值输出结果。注意,判断素数的循环从 3 开始,每次步长为 2,这是因为偶数已经在函数中被排除了。
编写一个函数程序,其功能是判定一个数是否为素数,若是素数则函数返回值为1,若不是素数则函数返回值为0。用此函数判定找出100以内最大的3个素数。用c语言编写
以下是用 C 语言编写的判断素数函数:
```c
int isPrime(int n){
if(n<=1){
return 0;
}
for(int i=2;i*i<=n;i++){
if(n%i==0){
return 0;
}
}
return 1;
}
```
函数的输入参数为一个整数 n,返回值为 1 表示 n 是素数,返回值为 0 表示 n 不是素数。函数的实现原理是从 2 开始遍历到 sqrt(n)(即 n 的平方根)之间的每一个数,如果存在任意一个数可以整除 n,则 n 不是素数,否则 n 是素数。
接下来,我们可以利用这个函数来找出 100 以内最大的 3 个素数:
```c
#include <stdio.h>
int isPrime(int n);
int main(){
int maxPrime[3] = {0}; // 用数组记录最大的 3 个素数
for(int i=2;i<=100;i++){
if(isPrime(i)){
if(i>maxPrime[0]){
maxPrime[2] = maxPrime[1];
maxPrime[1] = maxPrime[0];
maxPrime[0] = i;
}else if(i>maxPrime[1]){
maxPrime[2] = maxPrime[1];
maxPrime[1] = i;
}else if(i>maxPrime[2]){
maxPrime[2] = i;
}
}
}
printf("100以内最大的 3 个素数为:%d %d %d\n", maxPrime[0], maxPrime[1], maxPrime[2]);
return 0;
}
int isPrime(int n){
if(n<=1){
return 0;
}
for(int i=2;i*i<=n;i++){
if(n%i==0){
return 0;
}
}
return 1;
}
```
输出结果为:
```
100以内最大的 3 个素数为:97 89 83
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)