题目内容
有4个数a,b,c,d,要求按由大到小的顺序输出.
思路分析:本题考查排序问题中应用条件结构判断的问题.我们可以把a,b,c,d中最大的放在a中,然后将余下的三个数中最大的放在b中,再找出余下的两个数中较大的放在c中,最后输出a,b,c,d.
解:算法步骤如下:
第一步,找出a和b中的大者放在a中,小者放在b中.
第二步,找出c和d中的大者放在c中,小者放在d中.
第三步,找出a和c中的大者放在a中,小者放在c中.
第四步,找出b和c中的大者放在b中,小者放在c中.
第五步,找出b和d中的大者放在b中,小者放在d中.
第六步,找出c和d中的大者放在c中,小者放在d中.
程序框图如图1-1-13所示.
![]()
图1-1-13
方法归纳 要比较两个数的大小,一般引入第三个变量,通过它可以实现两个变量的值的交换,从而节约了大量的变量(即计算机中的单元),使算法简捷.
本例中,对a,b,c,d两两之间比较大小,需要比较六次,并且每次比较大小后,需要根据它们之间大小关系执行不同的指令,因而设计算法时需要多次用到条件分支结构,这六个条件分支结构之间的关系是并行的(即它们之间的地位是平等的),并且可以交换位置.由此可见,条件分支结构不仅可以嵌套使用,还可以并行使用.
练习册系列答案
相关题目