| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1774 人关注过本帖
标题:输出三个整数,从小到大排列。
只看楼主 加入收藏
LangZK
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2019-4-17
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:5 
输出三个整数,从小到大排列。
#include<stdio.h>
void main()
{int x,y,z;
{scanf("%d%d%d",&x,&y,&z);}
if(x>y>z)
{printf("%d,%d,%d",z,y,x);}
else if(x>z>y)
{printf("%d,%d,%d",y,z,x);}
else if(y>x>z)
{printf("%d,%d,%d",z,x,y);}
else if(y>z>x)
{printf("%d,%d,%d",x,z,y);}
else if(z>x>y)
{printf("%d,%d,%d",y,x,z);}
else
if(z>y>x)
{printf("%d,%d,%d",x,y,z);}
}
这个为什么什么都执行不出来,求解。
题目为输出三个整数,从小到大排。
搜索更多相关主题的帖子: 输出 整数 从小到大 排列 printf 
2019-04-17 23:44
lihuahao哈
Rank: 2
等 级:论坛游民
威 望:1
帖 子:27
专家分:39
注 册:2018-11-17
收藏
得分:7 
没有x>z>y这种写法的,应该是x>z&&z>y,而且你这种排法非常不好

不懂就问,我也想变强!
2019-04-18 00:33
lihuahao哈
Rank: 2
等 级:论坛游民
威 望:1
帖 子:27
专家分:39
注 册:2018-11-17
收藏
得分:0 
上网搜一下,有很多其他好的排法

不懂就问,我也想变强!
2019-04-18 00:34
hailong2012
Rank: 2
等 级:论坛游民
威 望:1
帖 子:15
专家分:43
注 册:2018-3-12
收藏
得分:7 
参考代码:
程序代码:
#include <stdio.h>

int main()
{
    int a, b, c;

    puts("Please input three numbers.");
    scanf("%d%d%d", &a, &b, &c);
    printf("a = %d\tb = %d\tc = %d\n", a, b, c);

    if (a > b)
    {
        if (b > c) printf("%d\t%d\t%d\t\n", c, b, a);
        else
        {
            if (a > c) printf("%d\t%d\t%d\t\n", b, c, a);
            else printf("%d\t%d\t%d\t\n", b, a, c);
        }
    }
    else
    {
        if (b < c) printf("%d\t%d\t%d\n", a, b, c);
        else
        {
            if (a > c) printf("%d\t%d\t%d\n", c, a, b);
            else printf("%d\t%d\t%d\n", a, c, b);
        }
    }

    return (0);
}

2019-04-18 07:42
LangZK
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2019-4-17
收藏
得分:0 
回复 2楼 lihuahao哈
谢谢
2019-04-18 13:14
ZJYTY
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:92
专家分:700
注 册:2018-12-20
收藏
得分:7 
程序代码:
#include<stdio.h>

int main()
{
    int input[3];

    for (int i = 0; i < 3;i++)
    {
        printf("Input No %d integer: ",i+1);
        scanf("%d", &input[i]);
        while (!getchar());
    }

    for (int i = 0; i < 3;i++)
    {
        for (int j = 0; j < i;j++)
        {
            int temp;
            if (input[i]<input[j])
            {
                temp = input[j];
                input[j] = input[i];
                input[i] = temp;
            }
        }
    }

    for (int i = 0; i < 3; i++)
    {
        printf("%d\t", input[i]);
    }
    printf("\n");
    getchar();

    return 0;
}

-------------------------------若有不当之处,敬请谅解-------------------------------
2019-04-18 13:53
快速回复:输出三个整数,从小到大排列。
数据加载中...
 
   



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

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