题目详情
当前位置:首页 > 计算机考试 > 中级软件设计师
题目详情:
发布时间:2023-12-23 03:07:20

[简答题]【说明】数据排序。将给定的n个整数分别按照升序和降序进行排列。 class SortInt_1 { int i, j, k, temp; void SortInt(int a1, a2[]){//升序排序 for(i=0; i<a1-1; i++){ k=i; for(j=i+1 ;j<a1 ;j++) if ( (1) ) k=j; if(k!=i){ temp=a2[i];a2[i]=a2[k];a2[k]=temp; } } } } class Sortlnt_2 (2) { int i, j, k, temp; void Sortlnt(int a1,a2[]){//降序排序 for(i=0;i<a1-1 ;i++) { k=i; for(j=i+1 ;j<a1 ;j++) if ( (3) ) k=j; if(k!=i){ temp=a2[i];a2[i]=a2[k];a2[k]=temp; } } } } Class TestOverLoad { Public static void main(String args[]) { int a[]={10,55,100,35,87,90,100,16}; Sortlnt_1 newlnt1= (4) ; Newlnt1. SortInt(a. length, a);//调用SortInt_1类的方法 System. out. println("升序排列的数据"); For(int i=0;i<8;i++) System. out. print(a[i]+" "); system. out. println( ); SortInt_2 newInt2=new sortint_2( ); //创

更多"【说明】数据排序。将给定的n个整数分别按照升序和降序进行排列。 c"的相关试题:

[简答题]【说明】 以下程序实现数据的排序,将n个整数分别按照升序和降序进行排序,类SortInt_1实现升序排序,类SortInt_2实现降序排序。 【Java代码】 class SortInt_1{ int i,i,k,temp; void SortInt(int a1,int a2[]){//升序排序 for(i=0;i<a1-1;i++){ k=i; for(j=i+1;j<a1;j++){ if( (1) ) k=j; if(k !=i){ temp=a2[i];a2[i]=a2[k];a2[k]=temp; } } } } } class SortInt_2 (2) { int i,j,k,temp; void SortInt(int a1, int a2[]){//降序排序 for(i=0; i<a1-1;i++){ k=i; for(j=i+1;j<a1;j++){ if( (3) )k=j; } if(k !=i){ temp=a2[i];a2[i]=a2[k];a2[k]=temp; } } } } public class test{ public static void main(String args[]){ int a[]={10,55,100,35,87,90,100,16}; SortInt_1 NewInt= (4) ; NewInt.SortInt(a.lenvh,a);//调用SortInt_1类的方法 System.out.println("升序排列的数据: "); for(int i=0;i<a.length;i++){ System.out.print(a[i]+
[多项选择]【说明】
以下程序实现数据的排序,将n个整数分别按照升序和降序进行排序,类SortInt_1实现升序排序,类SortInt_2实现降序排序。
【Java代码】
class SortInt_1
int i,i,k,temp;
void SortInt(int a1,int a2[])//升序排序
for(i=0;i<a1-1;i++)
k=i;
for(j=i+1;j<a1;j++)
if( (1) ) k=j;
if(k !=i)
temp=a2[i];a2[i]=a2[k];a2[k]=temp;





class SortInt_2 (2)
int i,j,k,temp;
void SortInt(int a1, int a2[])//降序排序
for(i=0; i<a1-1;i++)
k=i;
for(j=i+1;j<a1;j++)
if( (3) )k=j;

if(k !=i)
temp=a2[i];a2[i]=a2[k];a2[k]=temp;




public class test
public static void main(String args[])
int a[]=10,55,100,35,87,90,100,16;
SortInt_1 NewInt= (4) ;
NewInt.SortInt(a.lenvh,a);//调用SortInt_1类的方法
System.out.prin
[单项选择]

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

现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行()次整数之间的比较。
A. 9
B. 10
C. 12
D. 13
[简答题]【说明】 有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。 【函数】 main( ) { int number[20],n,m,i; printf("the total numbers is:"); scanf("%d",&n); printf("back m:"); scanf("%d",&m); for(i=0;i<=n-1;i) scanf("%d,",&number[i]); (1) ; for(i=0;i<=n-1;i) printf("%d,",number[i]); } move(array,n,m) int n,m,array[20]; { int *p,array_end; array_end= (2) ; for(p=array[n-1]; (3) ;p--) *p= (4) ; *array=array_end; m--; if(m>0) (5) ; }
[简答题]给定程序MODI1.C中fun( )函数的功能是:将n个无序整数从小到大排序。
请改正程序中的错误,使它能得出正确的结果。
#include<stdio.h>
#include<stdlib.h>
fun(int n,int *a)
int i,j,p,t;
for(j=0;j<n-1;j++)
p=j;
/**********found**********/
for(i=j+1;i<n-1;i++)
if(a[p]>a[i])
/**********found**********/
t=i;
if(p!=j)
t=a[j];a[j]=a[p];a[p]=t;)


putarr(int n,int *z)
int i;
for(i=1;i<= n;i++,z++)
printf("%4d",*z);
if(!(i%10))printf("/n");
printf("/n");

main( )
int aa[20]=(9,3,0,4,1,2,5,6,8,
10,7,n=11;
printf("/n/nBefore sorting %d numbers:/q",n);putarr(n,aa);
fun(n,aa);
printf("/nAfter sorting %d numbers:/n",n);putarr(n,aa);

[填空题]下列给定程序中fun( )函数的功能是:将n个无序整数从小到大排序。 请改正程序中的错误,使它能得出正确的结果。 注意;不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include <conio.h> #include <stdio.h> #include <stdlib.h> fun(int n, int *a) { int i,j,p,t; for (j=0;j<n-1;j++) { P=j; /***************found*******************/ for(i=j+l;i<n-1;i++) if (a[p]>a[i]) /***************found*******************/ t=i; if (p!=j) {t=a[j];a[j]=a[p];a[p]=t;} } } putarr( iht n,int *z) {int i; for (i=l;i<=n;i++,z++) { printf("%4d",*z); if (!(i%10)) printf("/n"); } printf ("/n"); } main ( ) {int aa[20]={9,3,0,4,1,2,5,6,8,10,7},n=11; clrscr( ); printf("/n/nBefore sorting %d numbers:/n",n); putarr(n,aa); fun(n,aa); printf("/nAfter sorting %d numbers:/n",n);putarr(n,aa); }
[填空题]下列给定程序中fun( )函数的功能是:将n个无序整数从小到大排序。
请改正程序中的错误,使它能得出正确的结果。
注意;不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
fun(int n, int *a)
int i,j,p,t;
for (j=0;j<n-1;j++)
P=j;
/***************found*******************/
for(i=j+l;i<n-1;i++)
if (a[p]>a[i])
/***************found*******************/
t=i;
if (p!=j)
t=a[j];a[j]=a[p];a[p]=t;


putarr( iht n,int *z)
int i;
for (i=l;i<=n;i++,z++)
printf("%4d",*z);
if (!(i%10)) printf("/n");
printf ("/n");

main ( )
int aa[20]=9,3,0,4,1,2,5,6,8,10,7,n=11;
clrscr( );
printf("/n/nBefore sorting %d numbers:/n",n); putarr(n,aa);
fun(n,aa);
printf("/nAfter sorting %d numbers:/n",n);putarr(n,aa);

[简答题]【说明】
进行两个整数之间的比较,由考生通过输入窗口分别输入两个整数,程序比较出结果。例如:先后输入的两个数分别为25和36。
比较结果显示:
25!=36
25<36
25<=36
【Java代码】
import javax.swing.JOptionPane;
public class Java3

public static void main(String args[])

String (1) // 用户输入第1个字符串
secondNumber, // 用户输入第2个字符串
result; // 包含输出
int number1, // 比较的第1个数
number2; // 比较的第2个数
// 用户输入的第1个字符串
firstNumber =
JOptionPane. (2) ("Enter first integer:");
//读用户输入的第2个字符串
secondNumber =
JOptionPane.showlnputDialog("Enter second integer:");
将字符串类型转换成整数类型
number1= Integer. (3) (firstNumber);
number2= Integer.parselnt(secondNumber);
result= "":
if ( (4) )
result=number1+"=="+number2;
if (number1 != number2)
result=number1+"!="+number2;
if (number1<number2)

[单项选择]

对由n个记录所组成的有序关键码排序时,下列各常用排序算法的平均比较次数分别是:二路归并排序为 (1) ,冒泡排序 (2) ,快速排序为 (3) 。其中,归并排序和快速排序所需要的辅助存储分别是 (4) (5)

1()
A. O(1)
B. O(nlog2n)
C. O(n) D.O(n2)
D. O(n(log2n)2)
E. O(log2n)
[填空题]阅读以下说明和C函数,填充函数中的空缺。
[说明]
已知两个整数数组A和B中分别存放了长度为m和n的两个非递减有序序列,函数Adjustment(A,B,m,n)的功能是合并两个非递减序列,并将序列的前m个整数存入A中,其余元素依序存入B中。例如:
合并前 合并后
数组A的内容 1,9,28 1,4,7
数组B的内容 4,7,12,29,37 9,12,28,29,37
合并过程如下:从数组A的第一个元素开始处理。用数组B的最小元素B[0]与数组A的当前元素比较,若A的元素较小,则继续考查A的下一个元素;否则,先将A的最大元素暂存入temp,然后移动A中的元素挪出空闲单元并将B[0]插入数组A,最后将暂存在temp中的数据插入数组B的适当位置(保持B的有序性)。如此重复,直到A中所有元素都不大于B中所有元素为止。
[C函数]
void Adjustment(int A[],intB[],int m,int n)
/*数组A有m个元素,数组B有n个元素*/
int k,temp;
for(i=0;i<m;i++)

if(A[i]<=B[0]) continue,
temp=______;/*将A中的最大元素备份至temp*/
/*从后往前依次考查A的元素,移动A的元素并将来自B的最小元素插入A中*/
for(k=m-1;______;k--)
A[k]=A[k-1];
A[i]=______;
/*将备份在七emp的数据插入数组B的适当位置*/
for(k=1;______&&k B[k-1]=B[k];
B[k-1]=______;



我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码