c语言:3个数abc,按大小顺序输出

如题所述

代码如下:

#include <stdio.h>
int main()
{
int t,a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a<b)
{
t=a,a=b,b=t;
}
if(a<c)
{
t=a,a=c,c=t;
}
if(b<c)
{
t=b, b=c, c=t;
}
printf("%d %d %d\n",a,b,c);
return 0;
}
原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。

拓展资料

1、冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。

2、它重复地走访过要排序的元素列,一次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。

3、这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

资料来源:百度百科:冒泡排序

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-11-12

#include <stdio.h>

int main()

{

int t,a,b,c;

scanf("%d%d%d",&a,&b,&c);

if(a<b)

{

t=a,a=b,b=t;

}

if(a<c)

{

t=a,a=c,c=t;

}

if(b<c)

{

t=b, b=c, c=t;

}

printf("%d %d %d\n",a,b,c);

return 0;

}

原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。

扩展资料:

C语言冒泡算法

泡排序算法的运作如下:

1、比较相邻的元素,如果前一个比后一个大,就把它们两个调换位置。

2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。

3、针对所有的元素重复以上的步骤,除了最后一个。

4、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

本回答被网友采纳
第2个回答  2016-01-26
#include <stdio.h>
int main()
{
int t,a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a<b)
{
t=a,a=b,b=t;
}
if(a<c)
{
t=a,a=c,c=t;
}
if(b<c)
{
t=b, b=c, c=t;
}
printf("%d %d %d\n",a,b,c);
return 0;
}
原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。
第3个回答  2007-07-28
main()
{
float a,b,c,t;
scanf("%f,%f,%f",&a,&b,&c);
if(a<b)
{t=a;a=b;b=t}
if(a<c)
{t=a;a=c;c=t}
if(b<c)
{t=b;b=c;c=b}
printf("%5.2f,%5.2f,%5.2f\n",a,b,c);
}

楼上那位,他也没有说非得是整形啊,所以用int是不是不太好,用实形float吧,要不出错误的。

这个程序是从大到小输出,从小到大的话,把a<b,a<c,b<c改成a>b,a>c,b>c就好了
第4个回答  推荐于2018-02-22
#include "stdio.h"
#include "conio.h"
main()
{
int a,b,c,t;
scanf("%d%d%d",&a,&b,&c);
if (a>b)
{t=a;x=b;b=t;} /*交换a,b的值*/
if(a>c)
{t=c;c=a;a=t;} /*交换a,c的值*/
if(b>c)
{t=b;b=c;c=t;} /*交换c,b的值*/
printf("small to big: %d %d %d\n",a,b,c);
}本回答被提问者和网友采纳

c语言:3个数abc,按大小顺序输出
{ int t,a,b,c;scanf("%d%d%d",&a,&b,&c);if(a<b){ t=a,a=b,b=t;} if(a<c){ t=a,a=c,c=t;} if(b<c){ t=b, b=c, c=t;} printf("%d %d %d\\n",a,b,c);return 0;} 原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。

问:有3个数a,b,c,要求按大小顺序把它们输出。(C语言、传统流程图)_百 ...
3者比较就是两两比较综合处理,两两比较实现互换要通过中间变量t,即如果a>b,按从小到大排列则把a放在t中,然后把b放在a中,最后再把a取出放在b中,用C语言说就是赋职号=.按大小顺序排列只须把a>b,a>c,b>c改为a 四、传统流程图如下:

编写一个C程序,输入abc三个值,输出其中最大者
\/\/编写一个程序,输入a,b,c三个值,输出其中最大者 include<stdio.h> int main(){ int a,b,c,max; \/\/定义四个整型数 printf("请输入三个数:");scanf("%d,%d,%d",&a,&b,&c);max=a;if (max<b){ max=b;} if (max<c){ max=c;} printf("%d\\n",max);return 0;} ...

急!!!有三个数abc,要求按大小顺序输出. 请问用C语言怎么写?
void sort(int* a, int* b, int* c){ int t;if (*a>*b)t=*a,*a=*b,*b=t;if (*b>*c){ t=*b,*b=*c,*c=t;if (*a>*b)t=*a,*a=*b,*b=t;} }

C语言 输入abc三个数,怎么从小到大输出??
问题:输入三个数a,b,c,把其中的最大值赋值给c,中间赋值给b,最小值赋值给a。输出a,b,c。参考代码:include "stdio.h"int main(){int a,b,c,max,min;scanf("%d%d%d",&a,&b,&c);if(a>b){max=a;min=b;}else{max=b;min=a;}if(c>max) max=c;if(min>c) min=c;b=a+...

求助-C语言作业 有3个数abc,要求按大小顺序输出 用N-S图和伪代码表示算...
伪码应该是 input a,b,c if a<b then t=a a=b b=t if a<c then t=a a=c c=t if b<c then t=b b=c c=t print a,b,c 图没办法了

有3个数a,b,c,要求按大小顺序把它们输出
就交换位置 if(a>c){t=a; a=c; c=t;} \/\/a与c若大小顺序不对,就交换位置;到此a肯定是最小 if(b>c){t=b; b=c; c=t;} \/\/b与c若大小顺序不对,就交换位置;到此c肯定是最大 printf("这三个数从小到大排列是:%d %d %d\\n",a,b,c);getch();return 0;} ...

有三个数abc,要求按由大到小的顺序把它们打印出
有三个数abc,要求按由大到小的顺序把它们打印出来,用流程图这样表示:先输入a, 再输入b 。如果a >b,则出a 。再输入c, 如果a >c 则输出a ;再输入b,如果b >c ,输出b ,则a>b>c 流程图(Flow Chart):使用图形表示算法的思路是一种极好的方法,因为千言万语不如一张图。流程图在...

C语言 有三个数abc 要求按大小顺序输出
include <stdio.h>void sort(int *a,int *b,int *c){ int t; if (*a > *b) t=*a,*a=*b,*b=t; if (*b > *c) { t=*b,*b=*c,*c=t; if(*a > *b) t=*a,*a=*b,*b=t; }}int main(){ int a, b, c; printf("give me...

问一道简单的C语言题有三个数ABC,由键盘输入,输出其中最大的数!
include<stdio.h> main(){ int a,b,c,max;printf("input 3 numbers:");scanf("%d%d%d",&a,&b,&c);if(a>b)max=a;else max=b;if(c>max)max=c;printf("the maximum number is: %d.\\n",max);}

相似回答