C语言循环语句编程任意一个大于2的偶数等于两个素数之和
1 回答
已采纳
望远
TA贡献1017条经验 获得超1032个赞
/******************************** ****背景:任意一个大于等于4的偶数都能表示成两个素数之和 ********************************/ #include<stdio.h> #include<math.h> int isPrime(int n) { int i; for(i=2;i<=sqrt(n);i++) { if(n%i==0) return 0; } if(n==1) return 0; return 1; } void main() { int i,n,count; do{ printf("请输入一个大于等于4的偶数:"); scanf("%d",&n); if(n<4||n%2!=0) { printf("数据错误请重新输入!!\n"); } }while(n<4||n%2!=0); for(i=2,count=0;i<=n/2;i++) { if(isPrime(i)&&isPrime(n-i)) { printf("%d =%d +%d\n",n,i,n-i); count++; } } printf("一共有%d种情况\n",count); }
- 1 回答
- 1 关注
- 1197 浏览
添加回答
举报
0/150
提交
取消