C语言,输入三组成三角形

学习 时间:2026-04-08 00:03:59 阅读:1461
C语言,输入三组成三角形#include main(){int x,y,z,l;int s=sqrt(10);scanf("x=%d y=%d z=%d",&x,&y,&z);while((x+y)>z&&(x+z)>y&&(y+z)>x){if ((x+y)>z&&(x+z)>y&&(y+z)>x){printf("x=%d y=%d z=%d",x,y,z);l=x+y+z;printf("L=%d",l);s=sqrt((l/2)*(l/2-x)*(l/2-y)*(l/2-z));printf ("S=%d",s);break;}else {scanf("x=%d y=%d z=%d",&x,&y,&z);}}},我想输入 三数 组成一个三角形,然后再判断,是否能组成三角形,如果能,然后再求边长和面积.为什么按照这样写完后,不对.(如果输入的三数不能组成三角形,然后再接着输入,一直到能组成三角形为止)

最佳回答

忧郁的大白

超帅的可乐

2026-04-08 00:03:59

拜托各位啦,这个题会有这么复杂吗?如下,请楼主体会其中算法:#include#includevoid main(){ float a,b,c,l,s; do { printf("please input the triangle's three edges:\n"); scanf("%f%f%f",&a,&b,&c); } while(!(a>0&&b>0&&c>0&&a+b>c&&a+c>b&&b+c>a)); l=a+b+c; s=sqrt((l/2)*(l/2-a)*(l/2-b)*(l/2-c)); printf("a=%f,b=%f,c=%f\nl=%f\ns=%f",a,b,c,l,s);}楼主写的程序中: 1、数据应为float型,头文件缺失stdio。h; 2、第四行“s=sqrt(10);”过于有创意; 3、其算法逻辑混乱。

最新回答共有2条回答

  • 微笑的月饼
    回复
    2026-04-08 00:03:59

    拜托各位啦,这个题会有这么复杂吗?如下,请楼主体会其中算法:#include#includevoid main(){ float a,b,c,l,s; do { printf("please input the triangle's three edges:\n"); scanf("%f%f%f",&a,&b,&c); } while(!(a>0&&b>0&&c>0&&a+b>c&&a+c>b&&b+c>a)); l=a+b+c; s=sqrt((l/2)*(l/2-a)*(l/2-b)*(l/2-c)); printf("a=%f,b=%f,c=%f\nl=%f\ns=%f",a,b,c,l,s);}楼主写的程序中: 1、数据应为float型,头文件缺失stdio。h; 2、第四行“s=sqrt(10);”过于有创意; 3、其算法逻辑混乱。

上一篇 兄弟地 含义是什么

下一篇 关于母爱和父爱的诗句必须是诗句