思路:首先定义三个变量a,b,c ,再封装一个顺序按从大到小输出的顺序函数。
#include <stdio.h>
void YdDxShuChu(int *pa,int *pb,int *pc)
{
int tmp;
tmp = *pa;
*pa = *pb;
*pb = *pc;
*pc = tmp;
if(*pa<*pb) //如果a<b,那么a和b的值互换
{
tmp = *pa;
*pa = *pb;
*pb = tmp;
}
if(*pa<*pc) //如果a<c,那么a和b的值互换
{
tmp = *pa;
*pa = *pc;
*pc = tmp;
}
if(*pb<*pc) //如果b<c,那么a和b的值互换
{
tmp = *pb;
*pb = *pc;
*pc = tmp;
}
}
int main()
{
int a;
int b;
int c;
printf("请输入三个数\n");
scanf("%d%d%d",&a,&b,&c);
YdDxShuChu(&a,&b,&c);
printf("输出的结果是:%d %d %d\n",a,b,c);
return 0;
}
运行结果
无论是先输入小数还是从中间输入大数,结果都会由从大到小的顺序输出