4.3.2  程序设计方案

4.3.2 程序设计方案

由上述分析可知,本例的程序由外循环体与内循环体组成,其中内循环的任务是完成图4-12所示的一轮冒泡排序过程,外循环的任务是在完成每一轮内循环冒泡排序过程后(即完成n-1次两两比较与交换后),再进行新一轮的内循环冒泡排序过程,直至n个数都已按从小到大的顺序在数据块中排列。

978-7-111-46831-8-Chapter04-23.jpg

图4-13 双重循环程序设计方案的原理框图

图4-13为这一双重循环程序设计方案的原理框图。

由图可见:

1)外循环程序主要由内循环初始化程序、内循环体与外循环控制程序三大部分组成。其中,内循环初始化程序用来在每一轮冒泡排序开始重新设置计数器,以保证每一轮都能进行n-1次两两比较。

2)内循环程序主要由内循环体与内循环控制程序两部分组成。其中,内循环体主要由取数与两两比较交换两个程序段组成。程序在内循环体每进行一次就能进行一次两两比较交换。

3)数组长度为n时,每一轮冒泡排序要进行n-1次内循环,而完成n个数排序可能要进行(n-1)轮冒泡排序(即n-1次外循环),一共进行(n-1)2次两两循环。