大一C语言程序设计题, 选择结构程序设计,在线等,急 答案要详细全面

2025-02-12 10:15:13
推荐回答(2个)
回答1:

#include 
#include 
#include 
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[])
{
  int a,b,c;
  int max,min,mid;
  printf("请输入三角形的三边长度:");
  scanf("%d%d%d",&a,&b,&c);
  max=a>b?(a>c?a:c):(b>c?b:c);
  mid=a>b?(b>c?b:(a>c?c:a)):(b>c?(a>c?a:c):b);
  min=a>b?(b>c?c:b):(a>c?c:a);
  if(max  {
   if(a==b||a==c||b==c)
   {
    if(a==b&&a==c)
     printf("这是等边三角形。\n");
    else
     printf("这是等腰三角形。\n");
   }
   
   else
   {
    if(max*max==min*min+mid*mid)
     printf("这是一个直角三角形\n");
    else
     printf("这是一个一般的三角形.\n");
   }
  }
  else
   printf("构不成三角形.\n"); 
system("pause");
return 0;
}

回答2:

# include
int main()
{
float a,b,c;
float max;
printf("请输入三边长(空格键间隔):");
scanf("%f %f %f",&a,&b,&c);
if((a+b<=c)||(a+c<=b)||(b+c<=a))
printf("不能构成三角形\n");
else
{
if((a==b)&&(b==c))
printf("等边三角形\n");
else if((a==b)||(a==c)||(b==c))
{
if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("等腰直角三角形\n");
else
printf("等腰三角形\n");
}
else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("直角三角形\n");
else
printf("任意三角形\n");
}
}