C语言:计算并输出三个整数的最大值 并对三个数排序

这是《C语言程序设计》73页的思考题。下面分享自己的思路和代码

思路:

代码:

cs 复制代码
#include <stdio.h>
int main()
{
    int a,b,c,max,min,mid ; //设置大中小的数分别为max,mid,min,abc为输入的三个数
    printf("please input:");      //提示输入
    scanf("%d,%d,%d",&a,&b,&c);   //获取输入的abc
    printf("%d,%d,%d\n",a,b,c);   //检验输入的数,这行可省略
    if (a>b) //先比较a和b
    {
        max=a;
        if(b>c) //c最小
        {
            min=c;
            mid=b;
            max=a;
        }
        else  //b最小,再比较a和c
        {
            min=b;
            if(a<c)
            {
                max=c;
                mid=a;
                min=b;
            }
            else //a>c>b
            {
                max=a;
                mid=c;
                min=b;
            }
        }
        
    }
    else  //b>a
    {
        max=b;
        if(b<c)  //c最大
        {
            max=c;
            mid=b;
            min=a;
        }
        else  //b>c,b最大,再拿a和c比
        {
            max=b;
            if(a<c) //b>c>a
            {
                max=b;
                min=a;
                mid=c;
            }
            else  //b>a>c
            {
                max=b;
                min=c;
                mid=a;
            }
        }

    }
    printf("max=%d\n",max);  //输出最大值
    printf("%d,%d,%d",max,mid,min); //从大到小排序
}

运行结果

友友们验证正确性的时候记得打乱大小顺序

相关推荐
坚持编程的菜鸟36 分钟前
LeetCode每日一题——Pow(x, n)
c语言·算法·leetcode
csdn_aspnet43 分钟前
分享MATLAB在数据分析与科学计算中的高效算法案例
算法·matlab·数据分析
白云千载尽1 小时前
moveit使用和机器人模型与状态--正向运动学和逆向运动学分析(四)
算法·机器人·逆运动学·moveit·正向运动学
我想吃余1 小时前
【0基础学算法】前缀和刷题日志(三):连续数组、矩阵区域和
算法·矩阵·哈希算法
小王C语言1 小时前
哈希表实现
数据结构·哈希算法·散列表
靖难都1 小时前
数据结构:单链表
数据结构
perseveranceX1 小时前
插入排序:扑克牌式的排序算法!
c语言·数据结构·插入排序·时间复杂度·排序稳定性
2501_938773991 小时前
文档搜索引擎搜索模块迭代:从基础检索到智能语义匹配升级
人工智能·算法·搜索引擎
CS创新实验室2 小时前
典型算法题解:长度最小的子数组
数据结构·c++·算法·考研408
我有一些感想……2 小时前
浅谈 BSGS(Baby-Step Giant-Step 大步小步)算法
c++·算法·数论·离散对数·bsgs