C语言编程输入的整数是否为素数
时间: 2023-05-23 20:01:20 浏览: 72
判断一个整数是否为素数是一个非常基础的算法问题,以下是一个 C 语言的实现代码:
```c
#include <stdio.h>
int isPrime(int n) {
int i;
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int num;
printf("请输入一个整数:");
scanf("%d", &num);
if (isPrime(num)) {
printf("%d 是素数。\n", num);
} else {
printf("%d 不是素数。\n", num);
}
return 0;
}
```
该程序首先读入一个整数 `num`,然后调用 `isPrime` 函数进行判断。`isPrime` 函数使用了一个循环,从 2 到 $\sqrt{n}$,依次判断整数是否能够整除这些数。如果找到一个能够整除的数,说明该数不是素数,返回 0;否则返回 1,表示该数是素数。在主函数中根据 `isPrime` 函数的返回值输出结果。
相关问题
c语言编程:输入即是素数又是回文数的三位整数
可以使用以下代码实现:
```c
#include <stdio.h>
int is_prime(int n) {
if (n < 2) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int is_palindrome(int n) {
int reversed = 0;
int temp = n;
while (temp > 0) {
reversed = reversed * 10 + temp % 10;
temp /= 10;
}
return n == reversed;
}
int main() {
for (int i = 100; i < 1000; i++) {
if (is_prime(i) && is_palindrome(i)) {
printf("%d\n", i);
}
}
return 0;
}
```
代码中使用了两个函数 `is_prime` 和 `is_palindrome` 分别用来判断一个数是不是素数和回文数。主函数中使用一个循环遍历所有三位数,找出满足条件的数并输出。
c语言编程输入十个整数,每个数都大于等于二,,打印出其中的素数
可以使用以下代码实现:
#include <stdio.h>
int is_prime(int num); // 判断是否是素数
int main() {
int nums[10];
int i, j;
// 输入十个整数
for (i = 0; i < 10; i++) {
printf("请输入第%d个整数:", i+1);
scanf("%d", &nums[i]);
// 判断输入是否合法
while (nums[i] < 2) {
printf("输入的数必须大于等于2,请重新输入:");
scanf("%d", &nums[i]);
}
}
// 打印素数
printf("打印素数:");
for (i = 0; i < 10; i++) {
if (is_prime(nums[i])) {
printf("%d ", nums[i]);
}
}
return 0;
}
// 判断是否是素数
int is_prime(int num) {
int i;
for (i = 2; i < num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
阅读全文