69,382
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <math.h>
int main(void)
{
float v;
float a;
float b;
float c;
float s;
printf("input three number:a,b,c\n");
ss:
scanf("%f,%f,%f",&a,&b,&c);
if((a+b<=c)||(a+c<=b)||(c+b<=a))
{
printf("输入的三边长无法构成三角形,请重新输入:\n");
goto ss;
}
s=(a+b+c)/2;
v=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积是:%f\n",v);
return 0;
}
while(true)
{
if ( scanf("%f,%f,%f",&a,&b,&c) == 3 )
{
break;
}
else
{ printf("输入错误,请重新输入:\n");
fflush(stdin);
}
}//这个while用来判断输入是否正确
#include <stdio.h>
#include <ctype.h>
#include <math.h>
int main(void)
{
float v;
float a;
float b;
float c;
float s;
printf("input three number:a,b,c\n");
while(true)
{
while(true)
{
if ( scanf("%f,%f,%f",&a,&b,&c) == 3 )
{
break;
}
else
{ printf("输入错误,请重新输入:\n");
fflush(stdin);
}
}//这个while用来判断输入是否正确
if((a+b<=c)||(a+c<=b)||(c+b<=a))
{
printf("输入的三边长无法构成三角形,请重新输入:\n");
fflush(stdin);
}
else
{
break;
}
}
s=(a+b+c)/2;
v=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积是:%f\n",v);
return 0;
}
int in;
in = scanf("%f,%f,%f",&a,&b,&c);
rewind(stdin);
if((3!=in)||(a+b<=c)||(a+c<=b)||(c+b<=a))
…………