例题4-3 比较交换3个实数值,并按序输出

算法笔记例题4-3 比较交换3个实数值,并按序输出

题目描述

从键盘输入3个实数a, b, c,通过比较交换,将最小值存储在变量a中,最大值存储在变量c中,中间值存储在变量b中,并按照从小到大的顺序输出这三个数a, b, c。

末尾输出换行。

输入

输入以空格分隔的三个实数

输出

按照从小到大的顺序输出这三个实数,中间以空格分隔,最小值在前,最大值在后。小数点后保留2位小数。

注意末尾的换行。

样例输入 Copy

3 7 1

样例输出 Copy

1.00 3.00 7.00

思路

利用冒泡排序法实现效果

代码

#include<stdio.h>
int main()
{
    
    
    float a,b,c,d;
    scanf("%f%f%f",&a,&b,&c);
    float r[3]={
    
    a,b,c};
    int i,m;
    for(i=0;i<2;i++)
    {
    
    
        for(m=i+1;m<3;m++)
        {
    
    
            if(r[i]>r[m])
            {
    
    
                d=r[i];
                r[i]=r[m];
                r[m]=d;
            }   
        }
    }
    a=r[0];
    b=r[1];
    c=r[2];
    printf("%.2f %.2f %.2f\n",a,b,c);
    return 0;
}

总结

萌新一只,有问题欢迎大家指正

猜你喜欢

转载自blog.csdn.net/joepzzz/article/details/112798083
4-3
今日推荐