给定程序MODIl.C中函数fun的功能是:根据输入的三个边长(整型值),判断能否构成三角形:构成的是等边三角形,还是等腰三角形。若能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。

admin2016-10-29  18

问题 给定程序MODIl.C中函数fun的功能是:根据输入的三个边长(整型值),判断能否构成三角形:构成的是等边三角形,还是等腰三角形。若能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。
    请改正函数fun中指定部位的错误,使它能得出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
/*************found*************/
void fun(int  a,int b,int  C)
{  if(a+b>c  &&b+c>a  &&  a+c>b)  {
    if(a==b&&b==c)
    return 3;
    else  if(a-=b || b==c || a==c)
    return 2;
/*************found*************/
    else  return  1
    }
    else return 0;
}
main()
{  int a,b,c,shape;
  printf("\nInput a,b,c:");scanf
("%d%d%d",&a,  &b,&c);
    printf("\na=%d,  b=%d,  c=%d\n",
a,b,c);
  shape=fun(a,b,c);
  printf("\n\nThe shape:%d\n",
shape);
}

选项

答案(1)int fun(int a,int b,int c) (2)else return 1;

解析 (1)主函数内fun函数的调用形式是:“shape=fun(a,b,c);”,函数有返回值,且返回值类型是整型,故第一标识下应改为“int fun(int a,int b,int c)”。
(2)第二个标识下的else语句应该是指除了等边及等腰三角形之外的三角形,在C语言中,语句是以分号“;”结束,而第二标识下的语句没有以分号结束,故第二标识下应改为“else return 1;”。
转载请注明原文地址:https://jikaoti.com/ti/3di0FFFM
0

最新回复(0)