C语言选择结构程序设计

描述

输入一些数字,将这些数字按照从小到大排序。(谭浩强 C 语言 第三版 112 页第 5.9 题 )

题目

输入 4 个 整数,要求按由小到大的顺序输出。

题目解题思路

由于我们当前只学习了 if elseswitch 这样的选择结构语句,所以,我们可以用 if 来 两两比较,用第一个数和剩下的数进行比较,获取比较小的数,这样每次都能够获取到最小的数值。

代码具体实现

#include <stdio.h> void main() { printf("嗨客网(www.haicoder.net)\n\n"); int tempNum, a, b, c, d; printf ("请输入 4 个整数,以逗号分隔:"); scanf("%d,%d,%d,%d",&a,&b,&c,&d); printf("a = %d, b = %d, c = %d, d = %d\n", a, b, c, d); if(a > b) { tempNum = a; a = b; b = tempNum; } if(a > c) { tempNum = a; a = c; c = tempNum; } if(a > d) { tempNum = a; a = d; d = tempNum; } if(b > c) { tempNum = b; b = c; c = tempNum; } if(b > d) { tempNum = b; b = d; d = tempNum; } if(c > d) { tempNum = c; c = d; d = tempNum; } printf("排序结果如下:\n"); printf("%d %d %d %d \n", a, b, c, d); }

运行结果如图:

11_数字排序.png

因为没有学习循环语句,所以这边可以将两个数据比较,所有的都比较一下,中间通过一个临时变量,将两个数据替换,从第一个数开始,往后面比较,每比较一次就会获取到剩下的数据中最小的一个数。