| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 867 人关注过本帖, 1 人收藏
标题:【求助】判别三角形的程序!运行后得不到预期的结果!
只看楼主 加入收藏
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
结帖率:100%
收藏(1)
已结贴  问题点数:20 回复次数:19 
【求助】判别三角形的程序!运行后得不到预期的结果!
各位高手,小弟今天刚学C语言,编了个判别三角形的程序,但是运行后得不到预期的结果,这是怎么回事?请指点!谢谢!
#include <stdio.h>
int main(void)
{
    int a=0,b=0,c=0;
    printf("请输入任意三条线段,每个数之间用空格分隔:");
    scanf("%d %d %d",&a,&b,&c);
    if((a+b<=c)||(a+c<=b)||(b+c<=a))
        printf("不能构成三角形!\n");
    else
    {
        if((a==c)||(a==b)||(b==c))
        {
            if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
                printf("是等腰直角三角形!\n");
            else
            {
                if(a==b==c)
                    printf("是等边三角形!\n");
                else
                    printf("是等腰三角形!\n");
            }
        }
        else
        {
            if((a*a+c*c==b*b)||(b*b+c*c==a*a)||(b*b+c*c==a*a))
                printf("是直角三角形!\n");
            else
                printf("是一般三角形!\n");
        }
    }
    return 0;
}
补充一下:比如输入3 4 5三个数,得到的答案却是一般三角形;输入1 1 2三个数,得到的答案却是一般三角形······


[ 本帖最后由 mandown1991 于 2011-3-2 18:00 编辑 ]
搜索更多相关主题的帖子: 三角形 C语言 include 
2011-03-02 17:03
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:10 
因为是手机,所以想问lz是程序有错改不出来还是数学问题

免费赠送河蟹一只
2011-03-02 17:08
azjt
Rank: 2
等 级:论坛游民
帖 子:10
专家分:10
注 册:2011-3-2
收藏
得分:10 
看不太懂,进错了,我应该看VB
2011-03-02 17:09
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
回复 2楼 pcbaichi
我觉得应该是没错的,我不知道是不是逻辑上的问题!
2011-03-02 17:10
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
回复 4楼 mandown1991
我手机就一个电了,你还是等其他大侠来回答吧!或者等我下课用电脑再来回答你

免费赠送河蟹一只
2011-03-02 17:16
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
回复 5楼 pcbaichi
好的,谢谢!
2011-03-02 17:22
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
找到错误了,正确的程序如下:
#include <stdio.h>
int main(void)
{
    double a=0,b=0,c=0;
    printf("请输入任意三条线段,每个数之间用空格分隔:");
    scanf("%lf%lf%lf",&a,&b,&c);
    if((a+b<=c)||(a+c<=b)||(b+c<=a)||(a-b>=c)||(a-c>=b)||(b-c>=a))
        printf("不能构成三角形!\n");
    else
    {
        if((a==c)||(a==b)||(b==c))
        {
            if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
                printf("是等腰直角三角形!\n");
            else
            {
                if((a==c)&&(a==b)&&(b==c))
                    printf("是等边三角形!\n");
                else
                    printf("是等腰三角形!\n");
            }
        }
        else
        {
            if((a*a+c*c==b*b)||(b*b+c*c==a*a)||(a*a+b*b==c*c))
                printf("是直角三角形!\n");
            else
                printf("是一般三角形!\n");
        }
    }
    return 0;
}
还是要谢谢各位!
2011-03-02 18:49
mandown1991
Rank: 4
等 级:业余侠客
帖 子:262
专家分:252
注 册:2011-3-2
收藏
得分:0 
回复 5楼 pcbaichi
谢谢,我找到错误了!
2011-03-02 18:50
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
#include <stdio.h>
int main(void)
{
    int a=0,b=0,c=0;
    printf("请输入任意三条线段,每个数之间用空格分隔:");
    scanf("%d %d %d",&a,&b,&c);
    if((a+b<=c)||(a+c<=b)||(b+c<=a))
        printf("不能构成三角形!\n");
    else
    {
        if((a==c)||(a==b)||(b==c))
        {
            if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
                printf("是等腰直角三角形!\n");
            else
            {
                if((a==b)&&(b==c)&&(a==c))
                    printf("是等边三角形!\n");
                else
                    printf("是等腰三角形!\n");
            }
        }
        else
        {
            if((a*a+c*c==b*b)||(b*b+c*c==a*a)||(b*b+a*a==c*c))
                printf("是直角三角形!\n");
            else
                printf("是一般三角形!\n");
        }
    }
    return 0;
}

   唯实惟新 至诚致志
2011-03-02 18:50
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
我还是慢了,LZ太快了。

   唯实惟新 至诚致志
2011-03-02 18:52
快速回复:【求助】判别三角形的程序!运行后得不到预期的结果!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011888 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved