例题:下列给定程序中,函数fun的的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数。
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构。
代码如下:
#include<stdio.h>
#include<math.h>
void fun(int x,int*y,int*z)
{
int i,j,d,t;
for(i=3;i<x/2;i=i+2)
{
t=1;
for(j=2;j<sqrt((double)i);j++)
if(i%j==0)
t=0;
if(t==1)
{
d=x-i;
for(j=2;j<=sqrt((double)i);j++)
if(d%j==0)
t=0;
if(t==1)
{
*y=i;
*z=d;
}
}
}
}
main()
{
int x,y,z;
do
{
printf("\nInput x: ");
scanf("%d",&x);
}while(x%2);
fun(x,&y,&z);
printf("\n\n%d=%d+%d\n",x,y,z);
}
输出运行窗口如下:
越努力越幸运!
加油,奥力给!!!