填空题 给定程序中函数fun的功能是:求三个数的最小公倍数。
例如,给主函数中的变量x1、x2、x3分别输入15 11 2,则输出结果应当是:330。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
给定源程序:
#include<stdio.h>
/************found************/
fun(int x,y,z)
{int j,t,n,m;
j=1;
t=j%x;
m=j%y;
n=j%z;
while(t!=0||m!=0||n!=0)
{j=j+1;
t=j%x;
m=j%y;
n=j%z;
}
/************found************/
return i;
}
main()
{int x1,x2,x3,j;
printf("Input x1 x2 x3:");
scanf("%d%d%d",&x1,&x2,&x3);
printf("x1=%d,x2=%d,x3=%d/n",x1,x2,x3);
j=fun(x1,x2,x3);
printf("The minimal common multiple is:%d/n",j);
}
【正确答案】
【答案解析】(1)fun(int x,int y,int z)或int fun(int x,int y,int z)
(2)return j; [解析] (1)定义函数时,必须为每个形参分别定义变量类型。
(2)通过return语句将最小公倍数j返回主调函数。