用C语言编写以下程序:输入一个正整数,判断其是否是两个素数之和,如果是则输出这两个素数,如不能则输出“否”。
时间: 2024-05-04 18:20:40 浏览: 104
c语言:实现一个函数,判断一个数是不是素数
5星 · 资源好评率100%
以下是用C语言编写的程序:
```c
#include <stdio.h>
int isPrime(int num); // 判断素数的函数声明
int main() {
int n, i, j, flag = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
for (i = 2; i <= n / 2; i++) {
if (isPrime(i)) {
j = n - i;
if (isPrime(j)) {
printf("%d = %d + %d\n", n, i, j);
flag = 1;
}
}
}
if (!flag) {
printf("否\n");
}
return 0;
}
// 判断素数的函数定义
int isPrime(int num) {
int i;
if (num < 2) {
return 0;
}
for (i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
```
程序运行时,会要求用户输入一个正整数,然后程序会依次遍历从2到这个正整数的一半的所有数,判断这些数是否为素数,如果是,则计算出与这个数相加等于这个正整数的另一个素数,并输出这两个素数的和,否则继续遍历,直到找到符合条件的两个素数或者遍历完成。如果没有找到符合条件的两个素数,则输出“否”。
阅读全文