设计程序,先将10个整数按从大到小排序,然后把一个整数按大小插入到已排序的数组中。10个整数通过数组初始化赋值给数组元素, 如 int a[11]={127,3,6,28,54,68,87,105,162,18}; 将29插入数组中。 输入格式: “%d” 输出格式: "%4d" 输入样例: 29 输出样例: 162 127 105 87 68 54 28 18 6 3 162 127 105 87 68 54 29 28 18 6 3

设计程序,先将10个整数按从大到小排序,然后把一个整数按大小插入到已排序的数组中。10个整数通过数组初始化赋值给数组元素, 如 int a[11]={127,3,6,28,54,68,87,105,162,18}; 将29插入数组中。 输入格式: “%d” 输出格式: "%4d" 输入样例: 29 输出样例: 162 127 105 87 68 54 28 18 6 3 162 127 105 87 68 54 29 28 18 6 3


参考答案和解析
用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使a≥b≥c.具体操作步骤如下: 第一步;输出3个整数a,b,c. 第二步:将a与b比较,并把小者赋给b,大者赋给a. 第三步:将a与c比较,并把小者赋给c,大者赋给a,此时a已是三者中最大的. 第四步:将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到小的顺序排列好. 第五步:按顺序输出a,b,c. 程序: INPUT“a,b,c=”;a,b,c IF b>a THEN t=a a=b b=t END IF IF c>a THEN t=a a=c c=t END IF IF c>b THEN t=b b=c c=t END IF PRINT a,b,c END.

相关考题:

从键盘上输出10个整数存入一维数组中,按由大到小的顺序输出。

插入排序算法的主要思想是:每次从未排序序列中取出一个数据,插入到已排序序列中的正确位置,InsertSort 类的成员函数sort()实现了插入排序算法,请将画线处缺失的部分补充完整。class InsertSort{public:InsertSort(int*a0,int n0):a(a0),n(n0){}//参数组首地址,n 是数组元素个数void sort(){//此函数假设已排离序列初始化状态只包含a[0],未排序序列初始为a[1]?a[n-1]for (int i=1;iint j;for( [14] j0;--j){if(ta[j-1])break;a[j]=a[j-1];}a[j]=t;}}protected:int*a,n;//指针a 用于存放数组首地址,n 用于存放数组元素个数};

( 14 ) 插入排序算法的主要思想是 : 每次从未排序序列中取出一个数据 , 插入到已排序序列中的正确位置 。InsertSort 类的成员函数 sort() 实现了插入排序算法。请将画线处缺失的部分补充完整。class InsertSort{public:InsertSort(int* a0, int n0) :a(a0), n(n0) {} // 参数 a0 是某数组首地址, n 是数组元素个数void sort( ){// 此函数假设已排序序列初始化状态只包含 a[0] ,未排序序列初始为 a[1]...a[n-1]for (int i=1; iint t=a[i];int j;for ( 【 14 】 ; j0; --j){if (t=a[j-1]) break;a[j]=a[j-1];}a[j]=t;}}protected:int *a, n; // 指针 a 用于存放数组首地址, n 用于存放数组元素个数};

若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 j--;} a[j+1]=t; } …… 则该程序段的功能是( )。 A.对数组a进行插入排序(升序)B.对数组a进行插入排序(降序)C.对数组a进行选择排序(升序)D.对数组a进行选择排序(降序)

阅读以下说明和C++程序,将应填(n)处的字句写在对应栏内。[说明]设计一程序,输入10个整数到一个数组中,调整这10个数在数组中的位置,使得其中最小的一个数成为数组的首元素,最大的一个数成为数组的末元素。[C++程序]include <iostream.h>define SIZE 10void main ( ){int data [SIZE];int m;cout<<"请输入"<<SIZE<<"个整数:";for ( m=0;m<SIZE; m++ ) (1);int j=0,k=0;for ( int i=1;i<SIZE; i++ )if ((2)) j=i;else if ( data[i]<data[k] ) (3);if (j>0 ) {int d=data[0];(4);data[k]=d;}if ( k<SIZE-1 ){int d=data [SIZE- 1 ];data[SIZE- 1 ]=data[j];(5);}cout<<end1<<" 排序后: ";for ( m=0;m<SIZE; m++ ) cout<<data[m]<<" " ;}

下列描述中不正确的是_______。A.字符型数组中可以存放字符串B.可以对字符型数组进行整体输入、输出C.可以对整型数组进行整体输入、输出D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值

插入排序算法的主要思想是:每次从未排序序列中取出一个数据,插入到己排序序列中的正确位置。InsertSort类的成员函数sort()实现了插入排序算法。请将画线处缺失的部分补充完整。class InsertSort{public:InsertSort(int* a0,int n0):a(a0),n(n0){}//参数a0是某数组首地址,n是数组元素个数void sort(){//此函数假设已排序序列初始化状态只包含a[0],未排序序列初始为a[1]…a[n-1]for(int i=1;i<n;++i){int t=a[i];int j;for(【 】;j>0;--j){if(t>=a[j-1])break;a[j]=a[j-1];}a[j]==t;}}protected:int*a,n;//指针a用于存放数组首地址,n用于存放数组元素个数};

阅读以下说明和流程图,填补流程图中的空缺(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,5,7,9,2} 通过算法实现对该数组按从大到小的顺序进行排序,输出排序后的结果同时输入原始数组的数组索引下标,如输出排序结果为{9,7,5,2,1},输出原始数组索引下标为{3,2,1,4,0}。

程序test.c的功能是:将大于整数m且紧靠m的k个素数存入数组XX。请考生编写函数num(intm,intk,intxx[])实现程序的要求,最后调用函数readwriteDAT0把结果输出到0ut.dat文件中。 例如,若输入17,5,则应输出:19,23,29,31,37。

采用插入排序算法对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.随机分布请帮忙给出每个问题的正确答案和分析,谢谢!

试题一(共 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。[流程图]

试题14以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数中,n存放a数组中数据的个数。请填空。#include stdio.hvoid fun(int s[], int *n, int k, int x){ int i;for(i=*n-1; i=k; i- - ) s[ ___ ]=s[i];s[k]=x;*n=*n+______;}main(){ int a[20]={1,2,3,4,5,6,7,8,9,10,11}, i, x=0, k=6, n=11;fun(a, n, k, x);for(i=0; in; i++) printf(“%4d”,a[i]); printf(“\n”);}

利用Math类获取5个随机整数范围在(15,30),不能重复,放在数组中,冒泡排序后遍历输出。

阅读下列说明和流程图,填补流程图中的空缺(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.随机分布

编程:用键盘输入整数给一个2×3的2维数组各元素赋值,并输出全部元素的值。

编一个程序,输入一个字符串,用ToCharArray()方法把字符串中的内容拷贝到字符数组中,然后用foreach输出该字符数组。

数组中有30个元素,若使用直接插入排序对其进行排序,则需要()趟才能完成排序。A、29B、30C、28D、27

定义整数一维数组inta[5]={1,2,3}则数组a的元素个数是()A、3B、5C、4D、2

编一个程序,输入一个正整数n,把它转换为二进制数,并输出。提示:应该利用数组。

冒泡排序算法中降序排序指的是()A、从高到低排列数组元素值B、从低到高排列数组元素的值C、由横向到纵向排列数组元素的值D、由纵向到横向排列数组元素的值

编程序:从键盘输入10个整数置入数组a,求数组a中所有偶数之和。

问答题编一个程序,输入一个正整数n,把它转换为二进制数,并输出。提示:应该利用数组。

问答题编程序:从键盘输入10个整数置入数组a,求数组a中所有偶数之和。

问答题编程:用键盘输入整数给一个2×3的2维数组各元素赋值,并输出全部元素的值。

单选题数组中有30个元素,若使用直接插入排序对其进行排序,则需要()趟才能完成排序。A29B30C28D27

问答题编一个程序,输入一个字符串,用ToCharArray()方法把字符串中的内容拷贝到字符数组中,然后用foreach输出该字符数组。