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

admin2019-04-04  47

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

最新回复(0)