C语言程序编写三个数由大到小排序

输入三个数,给这三个数排序要求用条件表达式
如:a>b?a:b
如输入:12 65 20
最后输出结果是:最大的数是:65
中间数是:20
最小数是:12

#include<stdio.h>
void main()
{
int a,b,c,k;
printf("\nplease a,b and c:");/*提示输入三个数*/
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)/*如果a<b,交换a与b的值*/
{
k=a;
a=b;
b=k;
}
if(a<c)/*如果a<c,交换a与c的值*/
{
k=a;
a=c;
c=k;
}
if(b<c)/*如果b<c,交换b与c的值*/
{
k=b;
b=c;
c=k;
}
printf("a=%d\t,b=%d\t,c=%d\n",a,b,c);/*因为比较的时候是a<b<c,交换以后

的结果是a>b>c,所以输出句子是a=%d\t,b=%d\t,c=%d这个顺序*/
}

经过TC3.0测试完全正确。你题目也没说用不用到调用函数,或者用其它编译器的,所以只写最简单的给你
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-09-26
#include<stdio.h>
void main()
{
int a,b,c,k;
printf("请输入三个数\n");
scanf(%d%d%d,&a,&b,&c);
if(a>b)
{k=a;
a=b;
b=k;
}
if(c>a)
{
k=c;
c=a;
a=k;
}
if(c>b)
{
k=c;
c=b;
b=c;
}
printf("最大的数是:%d\n",a);
printf("中间数是:%d\n",b);
printf("最小数是:%d\n",c);
}

其实如果你学过C++的话,这个问题是相当简单的,因为C++语言里有排序功能,程序如下:
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int a[3];
cout<<"请输入三个数"<<endl;
for(int i=0;i<3;i++)
cin>>a[i];
sort(a,a+3);
for(i=0;i<3;i++)
cout<<a[i]<<endl;
return 0;
}
第2个回答  2019-03-28
#include
void
main()
{
int
a,b,c,k;
printf("\nplease
a,b
and
c:");/*提示输入三个数*/
scanf("%d,%d,%d",&a,&b,&c);
if(a
b>c,所以输出句子是a=%d\t,b=%d\t,c=%d这个顺序*/
}
经过TC3.0测试完全正确。你题目也没说用不用到调用函数,或者用其它编译器的,所以只写最简单的给你
第3个回答  推荐于2018-03-14
#include <stdio.h>
int main()
{
int a=3,b=2,c=1;

printf ("最大=%d, 中间=%d, 最小=%d\n",
a>b && a>c?a:(b>c?b:c),
a>b && a<c||a<b&&a>c?a:(a<b&&a<c?(b>c?c:b):(b>c?b:c)),
a<b && a<c?a:(b<c?b:c));
}本回答被提问者和网友采纳
第4个回答  2019-11-07
#include
<stdio.h>
int
main()
{
int
a=3,b=2,c=1;
printf
("最大=%d,
中间=%d,
最小=%d\n",
a>b
&&
a>c?a:(b>c?b:c),
a>b
&&
a<c||a<b&&a>c?a:(a<b&&a<c?(b>c?c:b):(b>c?b:c)),
a<b
&&
a<c?a:(b<c?b:c));
}

c语言编写程序,任意三个数,由大小到排序,源代码如何写!
&b,&c);max=a>b?a:b;min=amax) max=c;if(min>c) min=c;printf("从大到小排序:%d %d %d\\n",max,a+b+c-max-min,min); }\/*运行结果:2 1 3从大到小排序:3 2 1*\/

c语言编辑程序,任意输入3个数,按从大到小的顺序输入
main(){ float a,b,c,t;printf("请输入三个实数\\n");scanf("%f %f %f",&a,&b,&c);if(a>=b&&b>=c)printf("%5.2f %5.2f %5.2f\\n",a,b,c);else if(a>=c&&c>=b)printf("%5.2f %5.2f %5.2f\\n",a,c,b);else if(b>=a&&a>=c)printf("%5.2f %5.2f %5...

3个数从大到小排序,用c语言
int main(){int a,b,c,t;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 ...

c语言 把三个整数俺从大到小的顺序输出怎么编程
思路:求三个数x,y,z的大小顺序,可以先比较x和y的大小,把大值赋值x,小值赋值给y,接着比较x和z,把大值赋值x,小值赋值给z,则x为最大值,最后比较y和z的大小,把大值赋值给y,小值赋值给z,则z为最小值,x,y,z就是从大到小的顺序。参考代码:include "stdio.h"int main(){...

C语言的编程题:输入三个整数,按从大到小的顺序输出
include <stdio.h> main(){ int x,y,z,t;scanf("%d%d%d",&x,&y,&z);if (x<y){t=x;x=y;y=t;} if(x<z){t=z;z=x;x=t;} if(y<z){t=y;y=z;z=t;} printf("%d %d %d\\n",x,y,z);}

c语言,输入三个不同的数字,按从从大到小输出
1、参考2楼,修改两个语法错误:scanf("%d,%d,d%",&x,&y,&z);应该是:scanf("%d,%d,%d",&x,&y,&z);输出语句:printf("输入的三个数字由大到小排列为:%d,%d,%d",z,y,x);2、算法太乱,应该先对x,y,z排序,排序的算法是两两相比较,如果前者大就交换,最后得到x,y,z是从小到...

c语言程序输三个数大小排序
下面是从小到大排序(如果要从大到小排列,把if后()里的>换成<即可)include<stdio.h> main(){ float a,b,c;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=t;} printf("%f %f %f",a,b,c);} ...

用C语言对三个数从大到小排序
最小用min 不要用main. 这个是主函数名 不能和变量重复的.include <stdio.h>int main (void){int a,b,c,max,min;scanf("%d %d %d",&a,&b,&c);max = a>b?a:b;min = amax ) max = c;if( c<min ) min = c;\/\/这里用<printf("从大到小排序:%d %d %d\\n",max,a+b+...

编写一个c语言程序,从键盘输入三个数,要求按从大到小的顺序输出这三个...
int a,b,c;int maxNum,minNum,midNum;scanf("%d %d %d",&a,&b,&c);if (a>b){ if (a>c){ maxNum = a;if (b>c){ midNum = b;minNum = c;} else { midNum = c;minNum = b;} } else { maxNum = c;midNum = a;minNum = b;} } printf("%d %d %d\\n",max...

求教一道c语言编程题:输入三个整数,从大到小排序,并输出这三个数
scanf("j<3;j++){ if(*p[i]<,*p[0],*p[1],*p[2])C语言编程,顾名思义,就是用C语言来进行计算机编程工作。C语言是国际上广泛流行的,很有发展前途的计算机高级语言.它适合作为系统描述语言,即可用来编写系统软件,也可用来编写应用软件.C语言是一种引用广泛,并且实现灵活的一种计算机编程语言...

相似回答