题目内容

若要按从大到小给7,5,9,3,10五个数排序,试写出算法.

分析: 本题常见错误:第一步,输入7,5,9,3,10;第二步比较这五个数的大小;第三步输出排序后的5个数,这样就不符合计算机语言的特点.算法是让计算机理解的语言,上述操作计算机是无法做到的.本题可以先通过已知几个数之间的比较把其中的最大值设为a1,再求剩下几个数的最大值,设为a2,依次进行下去,最后按序输出即可.

解: S1  a=7,b=5,c=9,d=3,e=10;

S2  依次用a与其余各数比较,若a大于其余各数,则a最大,令a1=a,否则,拿那个比a大的数继续与剩下的数比较,按此法则进行下去,直到最后一个数也参与了比较,这样最后得到的数就是最大数,令它为a1;

S3  剩下的四个数继续按照S2的法则得到最大数,令它为a2;

S4  剩下的三个数继续按照S2的法则得到最大数,令它为a3;

S5  剩下的最后两个数进行比较,较大者设为a4,较小者设为a5;

S6  输出a1,a2,a3,a4,a5.

练习册系列答案
相关题目

违法和不良信息举报电话:027-86699610 举报邮箱:58377363@163.com

精英家教网