现在位置: 首页 > C 教程 > 正文

C 练习实例5

C 语言经典100例 C 语言经典100例

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

程序分析:我们想办法把最小的数放到 x 上,先将 x 与 y 进行比较,如果 x>y 则将 x 与 y 的值进行交换,然后再用 x 与 z 进行比较,如果 x>z 则将 x 与 z 的值进行交换,这样能使 x 最小。

实例 1

// Created by www.runoob.com on 15/11/9. // Copyright © 2015年 菜鸟教程. All rights reserved. // #include <stdio.h> int main() { int x,y,z,t; printf("\n请输入三个数字:\n"); scanf("%d%d%d",&x,&y,&z); if ( x>y ) { /*交换x,y的值*/ t=x; x=y; y=t; } if ( x>z ) { /*交换x,z的值*/ t=z; z=x; x=t; } if ( y>z ) { /*交换z,y的值*/ t=y; y=z; z=t; } printf("从小到大排序: %d %d %d\n",x,y,z); }

以上实例输出结果为:

请输入三个数字:
1
3
2
从小到大排序: 1 2 3

实例 2

//  Created by www.runoob.com on 15/11/9.
//  Copyright © 2015年 菜鸟教程. All rights reserved.
//
 
#include <stdio.h>

// 交换两个变量的值
void swap(int *a, int *b) {
    int temp = *a;
    *a = *b;
    *b = temp;
}

int main() {
    int a, b, c;
    printf("\n请输入三个数字:\n");
    scanf("%d %d %d", &a, &b, &c);

    if (a > b) {
        swap(&a, &b);
    }
    if (a > c) {
        swap(&a, &c);
    }
    if (b > c) {
        swap(&b, &c);
    }

    printf("从小到大排序: %d %d %d\n", a, b, c);
    return 0;
}

C 语言经典100例 C 语言经典100例