首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。 template<typenam
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。 template<typenam
admin
2010-01-15
77
问题
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。
【说明】
冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。
template<typename T,int size>void Orderedlist<T,size>∷BubbleSort(){
bool noswap; //交换标志
int i,j;
T temp;
for(i=0;i<last;i++)
{
noswap=(1);
for(j=(2);(3);(4))
{//从下往上冒泡
if(slist[j]<slist[j-1])
{
temp=slist[j];
slist[j]=slist[j-1];
slist[j-1]=temp;
noswap=(5);
}
}
if(noswap)break;
}
}
选项
答案
(1)true (2)last (3)j>i (4)j-- (5)false
解析
本题考查用C++实现冒泡排序。
题目要求用程序实现冒泡排序,其中last是有序表的元素个数,即需排序元素的个数。首先我们需要了解一下冒泡排序的方法。冒泡排序将被排序的记录数组R[1..n]垂直排列,每个记录R
看做是重量为ki的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,就使其向上“飘浮”。如此反复进行,直到最后任何两个气泡都是轻者在上,重者在下为止。
冒泡排序的具体过程为:
第一步,先比较k1和k2,若k1>k2,则交换k1和k2所在的记录,否则不交换。继续对k2和k3重复上述过程,直到处理完kn-1和kn。这时最大的排序码记录转到了最后位置,称第1次起泡,共执行n-1次比较。
第二步,与第一步类似,从k1和k2开始比较,到kn-2和kn-1为止,共执行n-2次比较,称第2次起泡。
依此类推,共做n-1次起泡,完成整个排序过程。下面我们来具体分析程序。
第(1)空很明显是给布尔型交换标志变量noswap赋一个初值,从程序中不难发现,这个变量为真时,当前元素才可以进行交换操作,那么其初值应该是一个为真的值,因此此空答案为true。
第(2)空是给循环变量赋一个初值,这个循环的作用注释已经给出,是从下往上冒泡。题目中告诉我们序列中有last个元素,那么最下面的元素应该是第last个,因此此空答案为last。
第(3)空是循环的判断条件,根据我们上面的分析,每次起泡需要比较的次数为:总元素个数-已经起泡的次数,起泡的过程只需要执行到当前已经排好序的最后一个元素即可,因此此空答案为j>i。
第(4)空也在循环中,很明显是用来改变循环变量j的值,而这个循环变量是从last开始依次往上的过程,因此循环变量j的值应该是每次减少1,所以此空答案为j--。
第(5)空是给布尔型交换标志变量noswap赋一个值,它在循环的最后面,也就是说,在一次冒泡排序结束时的操作,根据题目的分析我们可以知道,每次冒泡排序都能排好一个元素在序列中的位置,而这个已经排好序的元素以后就不需要再参加排序过程了,因此应该将其标志变量noswap赋一个假值,因此此空答案为false。
转载请注明原文地址:https://kaotiyun.com/show/eIjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Word2007默认状态下,调整表格中的宽度可以利用(40)________________进行调整。
在Excel2010中,设A1单元格中的值为20,A2单元格中的值为60,若在C1单元格中输入函数“=AVERAGE(A1,A2)”,按回车键后,,则C1单元格中的值为(
某软件公司规定,该公司软件产品的版本号由二至四个部分组成:主版本号次版本号[.内部版本号][.修订号]。对该公司同一软件的以下四个版本号中最新的版本号是(
某地区去年粮食产量资料如下表:根据该表可以推算出,该地区去年薯类的产量为()万吨。
为保护个人信息不被泄露,每个人都需要提高安全意识。以下各项,除(62)外,都是应该养成的安全习惯。
某班级有40名学生,本次数学考试大多在80分上下。老师为了快速统计平均分,对每个学生的分数按80分为基准,记录其相对分(多出的分值用正数表示,减少的分值用负数表示,恰巧等于80分时用0表示),再统计出各种相对分的人数,如下表:根据上表可推算出,这次考试
在Word2007文档中查找所有的“广西”“广东”,可在查找内容中输入______,再陆续检查处理。
双击某个非可执行程序的文件名将(24)。
回收的问卷调查表中,很多表都有一些没有填写的项。处理缺失值的办法有多种,需要根据实际情况选择使用。对于一般性的缺值项,最常用的有效方法是(66)。
文件的扩展名可以说明文件类型。下面的“文件类型一扩展名”对应关系错误的是:
随机试题
我国正在进行的改革是()
胫骨中下1/3交界处最易发生骨折的原因主要是
以下哪一项是脾脏血管瘤的主要表现
酸化尿液,会增加以下何药的肾脏损害
施工合同履行中,若合同文件约定不一致时,正确的解释顺序应为()。
按基金规模是否可以发生变化分类,基金的种类有()。Ⅰ.开放式Ⅱ.限定式Ⅲ.非限定式Ⅳ.封闭式
企业销售商品涉及商业折扣的,应按扣除商业折扣前的金额确定商品销售收入金额。()
过分地强调社会责任而使企业价值减少,就可能导致整个社会资金运用的次优化,从而使社会经济发展步伐减缓。()
《公民道德建设实施纲要》把()作为职业道德的主要内容。
下列选项中,属于法治基本原则的有()(2011年一法综一第25题)
最新回复
(
0
)