c语言程序题求助求x+y≤21(x,y为素数)的所有可能解.要求:已知x、y均为质数,编写程序输出x+y≤21的所有可能解.要求:编写自定义函数isSuShu(int x),判断x是否为素数;调用isSuShu函数求x+y≤21
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/22 11:21:08
c语言程序题求助求x+y≤21(x,y为素数)的所有可能解.要求:已知x、y均为质数,编写程序输出x+y≤21的所有可能解.要求:编写自定义函数isSuShu(int x),判断x是否为素数;调用isSuShu函数求x+y≤21
c语言程序题求助
求x+y≤21(x,y为素数)的所有可能解.
要求:
已知x、y均为质数,编写程序输出x+y≤21的所有可能解.
要求:
编写自定义函数isSuShu(int x),判断x是否为素数;
调用isSuShu函数求x+y≤21的所有可能解.
c语言程序题求助求x+y≤21(x,y为素数)的所有可能解.要求:已知x、y均为质数,编写程序输出x+y≤21的所有可能解.要求:编写自定义函数isSuShu(int x),判断x是否为素数;调用isSuShu函数求x+y≤21
#include <stdio.h>
#include <stdlib.h>
int isSuShu(int i) //判断是否为素数
{
int n,m;
m = sqrt(i);
for(n=2; n<=m; n++)
{
if(i%n == 0)
break;
}
if(n>=m+1) return 1;
else return 0;
}
int main()
{
int x,i,k;
printf("请输入任一大于2的偶数:");
scanf("%d", &x);
for(i=2; i<=x/2; i++)
{
if(isSuShu(i) == 1)
{
k = x-i;
if(isSuShu(k) == 1)
{
printf("\t%d可以为素数%d、%d的和\n", x, i, k);
}
}
}
return 0;
}
这是我写的“任一大于2的偶数都可表示为两个素数之和”
你再添加个循环2~21内运行就行了.