用C语言输入3个整数,要求按从小到大的顺序输出。谢谢大家

如题所述

#include<stdio.h>
void main()
{
int a,b,c,t;
printf("请输入三个整数:a b c\n");
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);
}
希望能满足你的要求!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-30

#include <stdio.h>

void f(int* x,int* y,int* z)

{

int sum=*x+*y+*z;  //三个数之和

//求最大数

int tmp=(*x>*y)?*x:*y;

int max=(tmp>*z)?tmp:*z;

//求最小数

tmp=(*x<*y)?*x:*y;

int min=(tmp<*z)?tmp:*z;

//中间的数为sum减去最大数和最小数

int mid=sum-max-min

//按从小到大重新赋值

*x=min;

*y=mid;

*z=max

}

int main()

{
int a=10,b=-50,c=20;

f(&a,&b,&c);

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

return 0;

}

本回答被网友采纳
第2个回答  2008-12-25
输入三个整数,要求按从小到大的顺序输出。
解题思路:此题采用依次比较的方法排出其大小顺序。
main( )
{ int a , b , c ,t;
scanf(“%d , %d , %d” , &a , &b ,&c) ;
printf(“\n\n a=%d , b=%d , c=%d \n” ,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(“\n\n a=%d , b=%d , c=%d \n” ,a , b , c) ; }
即可
第3个回答  2011-11-24
#include <stdio.h>
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 0;
}
第4个回答  2019-10-28
程序如下:
#include <stdio.h>

int main( )
{ int a , b , c ,t;
scanf("%d , %d , %d" , &a , &b ,&c) ;
printf("\n\n a=%d , b=%d , c=%d \n" ,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("\n\n a=%d , b=%d , c=%d \n" ,a , b , c) ;
return 0;
}
运行结果:
./a.out
3,2,1

a=3 , b=2 , c=1

a=1 , b=2 , c=3
相似回答