大师求帮忙写个c语言程序上机实习题 (4) 知识点: 函数的定义、声明和调用 要求分别写出main() 函数的算法. 1. 编写程序验证哥德巴赫猜想,即任意大的偶数,可以用两个
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 19:39:33
大师求帮忙写个c语言程序上机实习题 (4) 知识点: 函数的定义、声明和调用 要求分别写出main() 函数的算法. 1. 编写程序验证哥德巴赫猜想,即任意大的偶数,可以用两个
大师求帮忙写个c语言程序
上机实习题 (4)
知识点: 函数的定义、声明和调用
要求分别写出main() 函数的算法.
1. 编写程序验证哥德巴赫猜想,即任意大的偶数,可以用两个素数之和表示.
要求与提示:
(1) 除main( )函数之外,另外编写一函数 isPrime( ),用来判断一个数是否为素数,如果为素数,返回1,否则返回0.如何判断一个数n是否为素数,方法是用2,3,4…这些数依次去除n, 如果小于等于n的平方根的数都除不尽,那么这个数n就是素数.
(2) main () 函数中,要求用户输入一偶数num,将它分成p和q两部分,使得p+q=num, 如何分呢?可以令p从2开始,每次加1,而q=num-p, 如果p和q都是素数,则已找到结果,退出寻找过程,输出结果,否则p=p+1 再试.其中判断p,q是否为素数可以通过调用isPrime ( )函数实现.
大师求帮忙写个c语言程序上机实习题 (4) 知识点: 函数的定义、声明和调用 要求分别写出main() 函数的算法. 1. 编写程序验证哥德巴赫猜想,即任意大的偶数,可以用两个
#include<stdio.h>
bool isprime(int x)
{
int i;
for(i=2;i<x;i++)
{
if((x%i)==0) return false;
}
return true;
}
void find(int x)
{
int p,q;
for(p=2;p<x-2;p++)
{
q=x-p;
if(isprime(p)&&isprime(q))
{
printf("p=%d,q=%d",p,q);
return;
}
}
printf("未找到p,q!");
}
int main()
{
int num;
printf("请输入一个偶数:");
scanf("%d",&num);
find(num);
return 0;
}