满意答案
#include
void main(){ //先用筛法找出100以内全部素数
char buf[100];
int i, j, k;
buf[0] = 0; buf[1] = 0;
for (i = 2; i < 100; i ++) buf[i] = 1; for (i = 2; i < 100; i ++)
if (buf[i])
for( j = 2 * i; j < 100; j += i) buf[j] = 0;//从6开始找,如果存在不符合的情况就输出一串叹号(当然,实际不会出现) for(i = 6; i <= 100; i += 2){
k = 0;
for(j = 2; j < i; j ++){
if(buf[j] && buf[i - j]){ //如果j是素数且 i-j也是素数,也就是说此数i可以表示为两个素数之和的时候,输出等式
k = 1;
printf("%d = %d + %d\n", i, j, i - j);
break;
}
}
if(!k) printf("%d !!!!!!!!!!");
}
}
08分享举报