题目内容 (请给出正确答案)
[单选题]

下面代码是实现数组array冒泡排序的片段,划线处应填入() int[] array = { 60, 56, 38, 45 }; int temp; for (int i = 0; i < 3; i++) { for (int j = 0; j < __________; j++) { if (array[j] < array[j + 1]) { temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } }

A.i

B.i+1

C.4-i

D.3-i

查看答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“下面代码是实现数组array冒泡排序的片段,划线处应填入()…”相关的问题

第1题

下面代码实现数组array的冒泡排序,画线处应填入()。

A. 4-i

B. i

C. i+1

D. 3-i

点击查看答案

第2题

请完成下列Java程序。程序的功能是对数组进行冒泡排序。冒泡排序算法的基本思路是把当前数据序列中的各相邻数据两两比较,发现任何一对数据间不符合升序或降序关系则立即调换它们的顺序,从而保证相邻数据间符合升序或降序的关系。本题是进行升序排列。例如数组a[]={30,1,-9,70,25}则排序后为{-9 1 25 30 70}。

注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。

源程序文件代码清单如下:

public class BubbleSort

{

public static void main(String args[])

{

int i,j;

int a[]={30,1,-9,70,25};

int n=a.length;

System.out.print("排序前数组为:");

for(i=0;i<n;i++)

System.out.print(a[i]+" ");

System.out.println();

for(i=1;i<n;i++)

for(j=0;______j++)

if(a[j]>a[j+1])

{

int temp=a[j];

______;

a[j+1]=temp;

}

System.out.print("排序后数组为:");

for(i=0;i<n;i++)

System.out.print(a[i]+" ");

}

}

点击查看答案

第3题

本程序用冒泡法对数组a[]的元素从大到小排序,请在程序空白处填空。 void bubble(int a[],int n) {int i,j,max,temp; max=n-1; do{j=0; for(i=0;i<max;i++) if(a[i]<a[i+1]) {temp=a[i];a[i]=a[i+1];a[i+1]=temp; j=i; } max=j; }while(( )); }

点击查看答案

第4题

请编写一个函数void fun(int a [],int n),其中a为数组,n为数组a的长度。函数fun()的功能是冒泡排序法将数组a元素按从小到大的顺序排列,实现数组a的升序排列。

注意:部分源程序已存在文件PROC12.cpp中。

请勿修改主函数和其他函数中的任何内容,仅在函数fun()的花括号中填写若干语句。

文件PROC12.cpp的内容如下:

//PROC12. cpp

include <iostream>

using namespace std;

define MAX 100

void fun(int a[],int n);

int main ()

{

int a[MAX],n,i;

cout<<"Please enter the array size n:\n";

do {

cin>>n;

if (n>100)

cout<<"array size flowover! ReEnter a number(0-100)\n";

}while (n>100);

cout<<"Enter the array data:\n";

for (i=0; i<n; i++)

cin>>a [ii;

fun(a[],n);

for (i=0; i<n; i++)

cout<<a [i] <<" ";

cout<<end1;

return 0;

}

void fun(int a[ ],int n)

{

// * * * * * * * *

}

点击查看答案

第5题

本程序用改进冒泡法对数组a[n]的元素从小到大排序,请在程序空白处填空。 void bubble(int a[],int n) { int j,k,jmax,temp; jmax=【 】; do { k=0; for(j=0;j<jmax;j++) if(a[j]>a[j+1]) {temp=a[j];a[j]=a[j+1];a[j+1]=temp;k=【 】; jmax=k; }while(jmax>0);}

点击查看答案

第6题

以下程序段用冒泡法对数组a进行由大到小排序,则下划线所在位置应填入的代码是()

int a[5]={29,47,14,110,8},i,j,t;for(i=0;i<=3;i++) for(j=0;j<=________;j++) if(a[j]

A. 5-i

B. 4

C. 4-i

D. 3-i

点击查看答案

第7题

阅读以下说明和流程图,回答问题将解答填入对应栏。

[说明]

本流程图采用“双向冒泡法”实现对数组a[n]的排序。双向冒泡法就是在逐步缩小的数组内,分别从数组的两端开始向内搜索,同时将大数往上浮,小数往下沉,每次交换一组数。flag是一个标志,发生过交换就置为1,当这个循环过程都不再发生交换时,则数组排序完成。

注:流程中循环开始的说明按照“循环变量:循环初值,循环终值,增量”格式描述;

定义swAP[a,b]为将a和b两数交换。

[问题]

将流程图的(1)~(5)处补充完整。

点击查看答案

第8题

数组的排序算法只有冒泡排序这一种。()

此题为判断题(对,错)。

点击查看答案

第9题

阅读下列函数说明和C代码,回答下面问题。

[说明]

冒泡排序算法的基本思想是:对于无序序列(假设扫描方向为从前向后,进行升序排列),两两比较相邻数据,若反序则交换,直到没有反序为止。一般情况下,整个冒泡排序需要进行众(1≤k≤n)趟冒泡操作,冒泡排序的结束条件是在某一趟排序过程中没有进行数据交换。若数据初态为正序时,只需1趟扫描,而数据初态为反序时,需进行n-1趟扫描。在冒泡排序中,一趟扫描有可能无数据交换,也有可能有一次或多次数据交换,在传统的冒泡排序算法及近年的一些改进的算法中[2,3],只记录一趟扫描有无数据交换的信息,对数据交换发生的位置信息则不予处理。为了充分利用这一信息,可以在一趟全局扫描中,对每一反序数据对进行局部冒泡排序处理,称之为局部冒泡排序。

局部冒泡排序的基本思想是:对于N个待排序数据组成的序列,在一趟从前向后扫描待排数据序列时,两两比较相邻数据,若反序则对后一个数据作一趟前向的局部冒泡排序,即用冒泡的排序方法把反序对的后一个数据向前排到适合的位置。扫描第—对数据对,若反序,对第2个数据向前冒泡,使前两个数据成为,有序序列;扫描第二对数据对,若反序,对第3个数据向前冒泡,使得前3个数据变成有序序列;……;扫描第i对数据对时,其前i个数据已成有序序列,若第i对数据对反序,则对第i+1个数据向前冒泡,使前i+1个数据成有序序列;……;依次类推,直至处理完第n-1对数据对。当扫描完第n-1对数据对后,N个待排序数据已成了有序序列,此时排序算法结束。该算法只对待排序列作局部的冒泡处理,局部冒泡算法的

名称由此得来。

以下为C语言设计的实现局部冒泡排序策略的算法,根据说明及算法代码回答问题1和问题2。

[变量说明]

define N=100 //排序的数据量

typedef struct{ //排序结点

int key;

info datatype;

......

}node;

node SortData[N]; //待排序的数据组

node类型为待排序的记录(或称结点)。数组SortData[]为待排序记录的全体称为一个文件。key是作为排序依据的字段,称为排序码。datatype是与具体问题有关的数据类型。下面是用C语言实现的排序函数,参数R[]为待排序数组,n是待排序数组的维数,Finish为完成标志。

[算法代码]

void Part-BubbleSort (node R[], int n)

{

int=0 ; //定义向前局部冒泡排序的循环变量

//暂时结点,存放交换数据

node tempnode;

for (int i=0;i<n-1;i++) ;

if (R[i].key>R[i+1].key)

{

(1)

while ( (2) )

{

tempnode=R[j] ;

(3)

R[j-1]=tempnode ;

Finish=false ;

(4)

} // end while

} // end if

} // end for

} // end function

阅读下列函数说明和C代码,将应填入(n)处的字句写在的对应栏内。

点击查看答案

第10题

17:请编程实现一个冒泡排序算法?

点击查看答案
热门考试 全部 >
相关试卷 全部 >
账号:
你好,尊敬的上学吧用户
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,
如果您知道正确答案,欢迎您来纠错

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
上学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
上学吧
点击打开微信