首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。 template<typenam
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。 template<typenam
admin
2010-01-15
78
问题
阅读以下说明,以及用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中,打印页码2,4—5,8,表示打印(41)________________。
以下关于windows7文件名的叙述中,(20)________________是正确的。
Windows7系统运行时,用户用鼠标右击某个对象经常会弹出________________。
在Excel2010中,设单元格A1、B1、C1、A2、B2、C2中的值分别为1、2、3、4、5、6,若在单元格D1中输入函数“=MAX(A1:A2,B1:C2)”,按回车键后,则D1单元格中的值为(
关于在Word中选定文本的叙述,正确的是(43)。
下列不属于著作权保护的是______。
某咨询顾问公司派小强统计本市各品牌汽车的占有率,以下4种统计方法中,小强应采用______方法,使估算结果较为可信。
为什么一般处理“震荡波”病毒时,首先要把被侵入的计算机系统从网络上断开?为了解决“震荡波”病毒利用windows的缓冲区溢出漏洞攻击计算机系统问题,我们采用某防火墙建立一个“关闭445端口”的规则。请给出下列规则配置参数(防火墙规则配置界面如下图所示)
防火墙包过滤规则的默认策略为拒绝,下表给出防火墙的包过滤规则配置界面。若要求内部所有主机能使用IE浏览器访问外部IP地址为202.117.118.23的Web服务器,为图中(1)~(4)空缺处选择正确答案。(1)A.允许B.拒绝(2)A.192
随机试题
病毒性心肌炎常见体征有
全国人民代表大会常务委员会的组成人员不得兼任( )的职务。
施工平行承发包对费用控制的特点体现在( )。
在Excel中输入字符串时,若该字符串的长度超过单元格的显示宽度,则超过的部分有可能()。
资产评估收费应当遵循()原则。
阅读下文。回答86—90题。科学家在7000名志愿者的协助下,联合研制成功了“电子大脑”。这是科学史上第一次制成能够“解读”思维的“人脑图”。设计者说,这是一项未来技术,将帮助人类理解人体最复杂的“机器”的工作原理。美国洛杉矶大学神经细胞扫
销售促进
某字长为8bit的计算机中,x和y为无符号整数,已知x=68,y=80,x和y分别存放在寄存器A和B中。请回答下列问题(要求最终用十六进制表示二进制序列)。若x和y相加后的结果存放存寄存器C中,则寄存器C中的内容是什么?运算结果是否正确?此时,零标志Z
二次型f(x1,x2,x3)=-2x1x2+6x1x3-6x2x3的秩为2。(Ⅰ)求参数c及此二次型对应矩阵的特征值;(Ⅱ)指出方程f(x1,x2,x3)=1表示何种二次曲面。
对计算机操作系统的作用描述完整的是()。
最新回复
(
0
)