请高手帮忙看看代码哪里有问题~
#include<stdio.h>void main()
{
float a,b,c,d,a1,b1,c1,d1,t;
char J,L,M1,M2,T;
printf("输入a,b,c,d的值:");
scanf("%f,%f,%f,%f",&a,&b,&c,&d);
a1=a;
b1=b;
c1=c;
d1=d;
printf("机架为j,连架杆为m,连杆为l\n");
printf("依次输入a,b,c,d所代表的结构:");
scanf("%c,%c,%c,%c",&J,&L,&M1,&M2);
if(a+b+c>d&&a+b+d>c&&a+c+d>b&&b+c+d>a)
{
if (a>b)
{
t=a;
a=b;
b=t;
}
if (a>c)
{
t=a;
a=c;
c=t;
}
if (a>d)
{
t=a;
a=d;
d=t;
}
if (b>c)
{
t=b;
b=c;
c=t;
}
if (b>d)
{
t=b;
b=d;
d=t;
}
if (c>d)
{
t=c;
c=d;
d=t;
}
if(a+d>c+b)
printf("此机构为双摇杆机构");
else
if(a1==a)
T=J;
if(b1==a)
T=L;
if(c1==a)
T=M1;
if(d1==a)
T=M2;
switch(T)
{
case 'm': printf("此机构为曲柄摇杆机构");break;
case 'j': printf("此机构为双曲柄机构");break;
case 'l': printf("双摇杆机构");break;
default : printf("error\n");
}
}
else
printf("显示错误");
getchar();
}
目的是输入四个数字,指定它们各自的部位一个是j,一个是l,两个是m,先判断是否组成四边形,否则输出显示错误,是则继续判断最大边和最小边之和是否小于等于其余两边和,否则输出双摇杆机构,是则继续判断,若最小边是j则为双曲柄机构,最小边是m曲柄摇杆机构,最小边l双摇杆机构~~