全部问题 > 当前问题

答案fun(int x,int y, int z),为什么没有在前面写上函数类型int?格式:函数类型 函数名(参数) { 函数体 return 函数返回值; } 那这答案不就错了?谢谢指导!!!

第4课 改错题真题

给定程序MODI1.C中函数fun的功能是:求三个数的最小公倍数。

例如,给主函数中的变量x1、x2、x3分别输入15  11  2,
则输出结果应当是:330。

请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

||

1

【微答案】
(1)fun(int x,int y, int z)或int fun(int x,int y,int z)
(2)return j;

【微分析】
(1)定义函数时,必须为每个形参分别定义变量类型。
(2)通过return语句将最小公倍数j返回主调函数。

#include <stdio.h>

/************found************/

int fun(int  x,int y,int 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 j;

}

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);

}


二级必过!!! 2015-9-12 07:53:33

共 1 个回答

Q雅 2015-9-12 08:01:50

在没写函数类型的时候默认为int型

问题来自: 改错题真题