C 语言经典100例-005

输入三个整数x,y,z,请把这三个数由小到大输出。

方法一:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
int main()
{
    int x, y, z, m;
    printf("Please enter three integer: x= ,y= ,z= \n");
    scanf("x=%d,y=%d,z=%d", &x, &y, &z);
    if(x > y)
    {
        m = x;
        x = y;
        y = m;
    }
    if(x > z)
    {
        m = x;
        x = z;
        z = m;
    }
    if(y > z)
    {
        m = y;
        y = z;
        z = m;
    }
    printf("The order of this three integer from smallest to biggest is: %d, %d, %d\n", x, y, z);
    return 0;
}

方法二:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
int main()
{
    int x, y, z;
    printf("Please enter three integer: x= ,y= ,z= \n");
    scanf("x=%d,y=%d,z=%d", &x, &y, &z);
    if(x > y)
    {
        x ^= y;
        y ^= x;
        x ^= y;
    }
    if(x > z)
    {
        x ^= z;
        z ^= x;
        x ^= z;
    }
    if(y > z)
    {
        y ^= z;
        z ^= y;
        y ^= z;
    }
    printf("The order of this three integer from smallest to biggest is: %d, %d, %d\n", x, y, z);
    return 0;
}