总c语言函数数组方法判断素数
时间: 2023-12-09 07:36:27 浏览: 101
以下是一个判断素数的C语言函数,使用了数组和循环的方法:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int n){
if(n <= 1){
return false;
}
int i;
for(i = 2; i * i <= n; i++){
if(n % i == 0){
return false;
}
}
return true;
}
int main(){
int n;
scanf("%d", &n);
if(isPrime(n)){
printf("%d is a prime number.\n", n);
}else{
printf("%d is not a prime number.\n", n);
}
return 0;
}
```
相关问题
c语言一维数组判断素数
在C语言中,判断一个一维数组中的整数是否为素数,可以编写一个简单的函数来实现。素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的数。以下是一个简单的示例,用于检查数组中的每个元素是否为素数:
```c
#include <stdio.h>
#include <stdbool.h>
// 判断一个数是否为素数
bool is_prime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) { // 只需检查到根号即可,因为大于根号的因子一定会有小于根号的配对
if (num % i == 0)
return false;
}
return true;
}
// 主函数,遍历数组并检查每个元素是否为素数
void check_array(int arr[], int size) {
for (int i = 0; i < size; i++) {
if (is_prime(arr[i]))
printf("%d is a prime number.\n", arr[i]);
else
printf("%d is not a prime number.\n", arr[i]);
}
}
int main() {
int arr[] = {2, 3, 4, 5, 6, 7, 8, 9, 10};
int size = sizeof(arr) / sizeof(arr);
check_array(arr, size);
return 0;
}
```
用C语言编写:求给定范围内素数的函数,要求把所有的素数存放到数组中;然后调用该函数求数组中所有素数之和
在C语言中,你可以创建一个函数来找出给定范围内的素数,并将它们存储到数组中。首先,我们需要一个函数`is_prime()`来判断一个数是否是素数,然后主函数`find_primes_sum()`负责找到并计算素数数组的总和。下面是一个简单的示例:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return false;
}
return true;
}
void find_primes_in_range(int start, int end, int primes[], int* count) {
*count = 0;
for (int num = start; num <= end; num++) {
if (is_prime(num)) {
primes[*count] = num;
(*count)++;
}
}
}
int sum_of_primes(int primes[], int count) {
int sum = 0;
for (int i = 0; i < count; i++)
sum += primes[i];
return sum;
}
int main() {
int lower_bound = 5; // 范围下限,比如从5开始找素数
int upper_bound = 50; // 范围上限
int primes[upper_bound]; // 素数数组,假设足够大
int prime_count = 0;
find_primes_in_range(lower_bound, upper_bound, primes, &prime_count);
int total_sum = sum_of_primes(primes, prime_count);
printf("素数之和: %d\n", total_sum);
return 0;
}
```
在这个例子中,我们首先初始化了一个`prime_count`变量用于计数,然后在`find_primes_in_range()`函数中遍历指定范围内的数字,如果是素数就将其添加到数组中并更新计数器。最后,`sum_of_primes()`函数计算并返回数组中素数的总和。
注意:这个程序没有处理数组大小不足的情况,实际应用中你需要确保提供的数组大小足以存放所有素数。
阅读全文