C 练习实例5
题目:输入三个整数 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;
}
// 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;
}