下面程序的功能是 : 将 N 行 N 列二维数组中每一行的元素进行排序 , 第 0 行从小到大排序 , 第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如:define N 4void sort(int a[][N]){ int i, j, k, t;for (i=0; iN;i++)for (j=0; jN-1:j++)for (k= 【 13 】 ; kN;K++)/* 判断行下标是否为偶数来确定按升序或降序来排序 */if ( 【 14 】 ? a[i][j]a[i][k]); a[i][j]a[i][k]){ t = a[i][j];a[i][j]=a[i][k];a[i][k] = t;}}void outarr(int a[N][N]){ …… }main(){ int aa[N][N]={{2,3,4,1},{8,6,5,7},{11,12,10,9},{15,14,16,13}};outarr(aa); /* 以矩阵的形式输出二维数组 */sort(aa);outarr(aa);}

下面程序的功能是 : 将 N 行 N 列二维数组中每一行的元素进行排序 , 第 0 行从小到大排序 , 第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如:

define N 4

void sort(int a[][N])

{ int i, j, k, t;

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

for (j=0; j<N-1:j++)

for (k= 【 13 】 ; k<N;K++)

/* 判断行下标是否为偶数来确定按升序或降序来排序 */

if ( 【 14 】 ? a[i][j]<a[i][k]); a[i][j]>a[i][k])

{ t = a[i][j];

a[i][j]=a[i][k];

a[i][k] = t;

}

}

void outarr(int a[N][N])

{ …… }

main()

{ int aa[N][N]={{2,3,4,1},{8,6,5,7},{11,12,10,9},{15,14,16,13}};

outarr(aa); /* 以矩阵的形式输出二维数组 */

sort(aa);

outarr(aa);

}


相关考题:

下列给定程序中,函数ptoc的功能是:利用插入排序法对字符串中的字符按从小到大的顺序进行排序。插入法的基本方法是:先对字符串中的头两个元素进行排序,然后把第3个字符插入前两个字符中,插入后前3个字符依然有序;再把第4个字符插入前三个字符中,待排序的字符串已 在主函数中赋予。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: includestrin9.h includestdi0.h define M 80 void proc(char*arr) { int i,j,n;char ch; n=strlen(arr): for(i=1;in;i++) //****found**** { c=arr[i]; j=i-1; while((j=o)&&(charr[j])) { arr[j+1]=arr[j]; j--; } arr[j+1]=ch; } } void main { char a[M]="QWERTYUIOPASDFGHJKLMNBVCXZ"; printf("The original string:%s\n",a); proc(a); printf("The string after sortin9: %s\n\n",a); }

已知函数 void- sort(int Array[-1 int N的功能:采用选择排序法将具有N元素的整型数组Aray按由大到小排序元素,排序好的元素仍然放在数组Aray里面。例如:如果原来数组为”1432567,则排序后为”7654321″。編写该函数的实现代码,并要求编写main()函数,对实现函数的进行测试 请帮忙给出正确答案和分析,谢谢

下列给定程序中,函数fun()的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。请改正程序中的错误,使它能得到正确结果。[注意] 不要改动main函数,不得增行或删行,也不得更改程序的结构。[试题源程序]include<stdio.h>define N 20void fun(int a[], int n){int i, j, t, p;for(j=0; j<n-1; j++){/***********found***********/p=jfor(i=j; i<n; i++)if(a[i]<a[p])/***********found***********/p=j;t=a[P];a[p]=a[j];a[j]=t;}}msin(){int a [N]=(9, 6, 8, 3, -1), i, m=5;printf("排序前的数据:”);for(i=0; i<m; i++)printf("%d", a[i]);printf("\n");fun(a, m);printf("排序后的数据:");for(i=0; i<m; i++)printf("%d", a[i]);printf("\n");}

下列给定程序中,函数fun()的功能是:利用插入排序法对字符串中的字符按从大到小的顺序进行排序。插入法的基本方法是:先对字符串中的头两个元素进行排序,然后把第3个字符插入到前两个字符中,插入后前3个字符依然有序;再把第4个字符插入到前3个字符中,待排序的字符串已在主函数中赋予。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <string.h>include <stdio.h>define N 80void insert(char *aa){int i,j,n; char ch;n=strlen(aa);for(i=1;i<n;i++){ch=aa[i];j=i-1;/*************found*************/while((j>=0)||(ch>aa[j])){aa[j+1]=aa[j];j--;}/*************found*************/aa[j]=ch;}}main(){char a[N]="JRTYDFKLIOPQWEGHMNBVCUASXZ";int i;printf("The original string: %S\n",a);insert(a);printf("The string after sorting:%S\n\n",a);}

下列给定的程序中,函数fun()的功能是:用选择法对数组中的n个元素按从大到小的顺序进行排序。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include<stdio.h>define N 20void fun(int a[ ],int n){int i,j,t,p;/*************found*************/for(j=0;j<n-1;j++) ;{p=j;for(i=j;i<n;i++)if(a[i)>a[p])p=i;t=a[p];a[p]=a[i];/*************found**************/a[p]=t;}}main(){int a[N]={11,32,-5,2,14},i,m=5;printf(“排序前的数据:”);for(i=0;i<m;i++)printf(“%d”,a[i]);printf(“\n”);fun(a,m);printf(“排序后的顺序:”);for(i=0;i<m;i++)printf(“%d”,a[i]);printf(“\n”);}

下列给定的程序中,函数fun()的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include<stdio.h>define N 20void fun(int a[],int n){int i,j,t,p;for (j=0;j<n-1;j++)/*************found**************/{p=jfor(i=j;i<n;i++)if(a[i]<a[p])/*************found**************/p=j;t=a[p]; a[p]=a[j]; a[j]=t;}}main(){int a[N]={9.6,8,3,-1},i,m=5;printf("排序前的数据: ");for(i=0;i<m;i++) printf("%d",a[i]);printf("\n");fun(a,m);printf("排序后的顺序: ");for(i=0;i<m;i++) printf("%d",a[i]);printf("\n");}

下列给定程序中,函数fun()的功能是;利用插入排序法对字符串中的字符按从小到大的顺序进行排序。插入法的基本方法是:先对字符串中的头两个元素进行排序,然后把第3个字符插入到前两个字符中,插入后前3个字符依然有序;再把第4个字符插入到前3个字符中,待排序的字符串已在主函数中赋予。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.试题程序:include <String.h>include <stdio.h>define N 80void insert(char *aa){ iht i, j, n; char ch;n=strlen (aa);for (i=1; i<n; i++)/**********************************/{ c=aa[i];j=i-1;while ((j>=0) && (ch<aa [j] )){ aa [j+l]=aa[j];j--;}aa [j+l]=ch;}}main ( ){ char a [N] = "QWERTYUIOPASDFGHJKIMNBVCXZ";int i;printf("The original string: %s\n",a);insert (a);printf("The string after sorting:%s\n\n", a);}

阅读以下说明和流程图,填补流程图中的空缺(1)~(9),将解答填入对应栏内。【说明】假设数组A中的各元素A(1),A(2),…,A(M)已经按从小到大排序(M≥1);数组B中的各元素B(1),B(2),…,B(N)也已经按从小到大排序(N≥1)。执行下面的流程图后,可以将数组A与数组B中所有的元素全都存入数组C中,且按从小到大排序 (注意:序列中相同的数全部保留并不计排列顺序)。例如,设数组A中有元素:2,5, 6,7,9;数组B中有元素2,3,4,7:则数组C中将有元素:2,2,3,4,5,6,7, 7, 9。【流程图】

采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1, i-2, ...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5.2.4.6.1.3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。A.9B.10C.12D.13

采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i一1个整数已经排好序,将第i个整数依次和第i.,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5 2,4,6,1,3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。A.9B.10C.12D.13(32)A.从小到大B.从大到小C.所有元素相同D.随机分布请帮忙给出每个问题的正确答案和分析,谢谢!

用命令实现如下功能:移动到第1行,对当前的行到文件尾的数据进行排序。

下面程序的功能是:将数组a下标为偶数的元素从小到大的排序,其他元素不变。给定的程序不完整,请在画线处填入适当的内容,回答 42~44 题。 注意:不得增行或删行,也不得更改程序的结构!第42题:请填写【1】处标准答案。

试题一(共 15 分)阅读以下说明和流程图,填补流程图中的空缺(1)~(9) ,将解答填入答题纸的对应栏内。[说明]假设数组 A 中的各元素 A(1),A(2) ,…,A(M)已经按从小到大排序(M≥1) ;数组 B 中的各元素 B(1),B(2),…,B(N)也已经按从小到大排序(N≥1) 。执行下面的流程图后, 可以将数组 A 与数组 B 中所有的元素全都存入数组 C 中, 且按从小到大排序 (注意:序列中相同的数全部保留并不计排列顺序) 。例如,设数组 A 中有元素:2,5,6,7,9;数组B 中有元素:2,3,4,7;则数组 C 中将有元素:2,2,3,4,5,6,7,7,9。[流程图]

阅读下列说明和流程图,填补流程图中的空缺(1)~(9),将解答填入答题纸的对应栏内。【说明】假设数组A中的各元素A⑴,A (2),…,A (M)已经按从小到大排序(M>1):数组B中的各元素B(1) , B (2) . B (N)也已经按从小到大排序(N≥1)。执行下面的流程图后,可以将数组A与数组B中所有的元素全都存入数组C中,且按从小到大排序(注意:序列中相同的数全部保留并不计排列顺序)。例如,设数组A中有元素: 2,5,6,7,9;数组B中有元素: 2,3,4,7;则数组C中将有元素: 2,2,3,4,5,6,7,7,9.

采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行( )次整数之间的比较。对于该排序算法,输入数据具有(请作答此空)特点时,对整数进行从小到大排序,所需的比较次数最多。A.从小到大B.从大到小C.所有元素相同D.随机分布

采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行(请作答此空)次整数之间的比较。对于该排序算法,输入数据具有( )特点时,对整数进行从小到大排序,所需的比较次数最多。A. 9B. 10C. 12D. 13

阅读以下说明和流程图,填补流程图中的空缺(1)~(9),将解答填入对应栏内。1、【说明】 假设数组A中的各元素A(1),A(2),…,A(M)已经按从小到大排序(M≥1);数组B中的各元素B(1),B(2),…,B(N)也已经按从小到大排序(N≥1)。执行下面的流程图后,可以将数组A与数组B中所有的元素全都存入数组C中,且按从小到大排序 (注意:序列中相同的数全部保留并不计排列顺序)。例如,设数组A中有元素:2,5, 6,7,9;数组B中有元素2,3,4,7:则数组C中将有元素:2,2,3,4,5,6,7, 7, 9。【流程图】

采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1,i-2,...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行( )次整数之间的比较。A.9B.10C.12D.13

对序列(50,72,28,39,81,15)中的元素按值从小到大进行排序,若已知第1趟排序的结果是(15,72,28,39,50,81),则可以断定采用的排序方法是()

在内存分配的"最佳适应法"中,空闲块是按()。A、始地址从小到大排序B、始地址从大到小排序C、块的大小从小到大排序D、块的大小从大到小排序

在排序框中选中“有标题行”,表示()A、排序后将第一行作为标题行B、在第一行之上增加一标题行C、第一行数据不参与排序D、标题行参与排序

对n个不同的排序码进行冒泡排序,在下列哪种情况下比较的次数最多?()A、从小到大排列好的B、从大到小排列好的C、元素无序D、元素基本有序

直接插入排序的方法是从第()个元素开始,插入到前边适当位置的排序方法。A、1B、2C、3D、n

当待排序记录已经从小到大排序或者已经从大到小排序时,快速排序的执行时间最省。

N个数采用冒泡排序,从小到大排序共需要进行()轮排序A、NB、N+1C、N-1D、(1+N)/2

单选题对n个不同的排序码进行冒泡排序,在下列哪种情况下比较的次数最多?()A从小到大排列好的B从大到小排列好的C元素无序D元素基本有序

单选题在内存分配的"最佳适应法"中,空闲块是按()。A始地址从小到大排序B始地址从大到小排序C块的大小从小到大排序D块的大小从大到小排序