c语言编写函数,对传送过来的三个数按由小到大的顺序排列,并通过形参传回调用函数

c语言编写函数,对传送过来的三个数按由小到大的顺序排列,并通过形参传回调用函数

三个参数呗,返回也是这三个参数

#include <stdio.h>
void sort(int *a,int *b,int *c)
{
     int max = *a,min = *a;
     int sum = *a + *b + *c;
     if(*b > max)
        max = *b;
     if(*b < min)
        min =  *b;
    if(*c > max)
        max = *c;
    if(*c < min)
        min = *c;
    *a = min;
    *c = max;
    *b = sum - min - max;
}
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    sort(&a,&b,&c);
    printf("由小到大排序:%d %d %d",a,b,c);
}

供参考:

#include <stdio.h>
void sort(int *a,int *b,int *c)
{
    int t;
    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;
}
int main()
{
    int a,b,c;
    scanf("%d%d%d", &a, &b, &c);
    sort(&a,&b,&c);
    printf("%d %d %d", a, b, c);
    return 0;
}