软考真题
第193题
阅读以下说明和C代码,填写程序中的空(1) ~(5) ,将解答写入答题纸的对应栏内。

【说明】
直接插入排序是一种简单的排序方法,具体做法是:在插入第i个关键码时,k1,k2,…,ki-1已经排好序,这时将关键码ki依次与关键码ki-1,ki-2,…,进行比较,找到ki应该插入的位置时停下来,将插入位置及其后的关键码依次向后移动,然后插入ki

例如,对{17,392,68,36}按升序作直接插入排序时,过程如下:

第1次:将392(i=1)插入有序子序列{17},得到{17,392};

第2次:将68(i=2)插入有序子序列{17,392},得到{17,68,392};

第3次:将36(i=3)插入有序子序列{17,68,392},得到{17,36,68,392},完成排序。

下面函数insertSort用直接插入排序对整数序列进行升序排列,在main函数中调用insertSort并输出排序结果。

【C代码】

voidinsert Sort(intdata[],int n)

/*用直接插入排序法将data[0]~data[n-1]中的n个整数进行升序排列*/

{ inti,j; inttmp;

for(i=1;i
if(data[i]<data[i-1]){ //将data[i]插入有序子序列data[0]~data[i-1]

tmp=data[i]; //备份待插入的元素

data[i]=(1) ;

for(j=i-2;j>=0 && data[j]> tmp;j­­--) //查找插入位置并将元素后移

(2) ;

(3) =tmp; //插入正确位置

}/*if*/

}/*for*/

}/*insertSort*/

int main()

{ int *bp,*ep;

int n,arr[]={17,392,68,36,291,776,843,255};

n = sizeof(arr) / sizeof(int);

insertSort(arr,n);

bp= (4) ; ep = arr+n;

for( ;bp
printf("%d/t", (5) );

return0;阅读以下说明和C代码,填写程序中的空(1) ~(5) ,将解答写入答题纸的对应栏内。

【说明】
直接插入排序是一种简单的排序方法,具体做法是:在插入第i个关键码时,k1,k2,…,ki-1已经排好序,这时将关键码ki依次与关键码ki-1,ki-2,…,进行比较,找到ki应该插入的位置时停下来,将插入位置及其后的关键码依次向后移动,然后插入ki

例如,对{17,392,68,36}按升序作直接插入排序时,过程如下:

第1次:将392(i=1)插入有序子序列{17},得到{17,392};

第2次:将68(i=2)插入有序子序列{17,392},得到{17,68,392};

第3次:将36(i=3)插入有序子序列{17,68,392},得到{17,36,68,392},完成排序。

下面函数insertSort用直接插入排序对整数序列进行升序排列,在main函数中调用insertSort并输出排序结果。

【C代码】


void insert Sort(int data[],int n){
    /*用直接插入排序法将data[0]~data[n-1]中的n个整数进行升序排列*/

	int i,j;
	int tmp;
	for (i=1;i=0 && data[j]> tmp;j­­--) //查找插入位置并将元素后移
        (2) ;
        (3) = tmp;
        //插入正确位置
    }
}

/*insertSort*/
int main() {
    int *bp,*ep;
    int n,arr[]= {17,392,68,36,291,776,843,255};
    n = sizeof(arr) / sizeof(int);
    insertSort(arr,n);
    bp = (4) ;
    ep = arr+n;
    for ( ;bp
        printf("%d/t", (5) );
        return 0;
    }
}

【问题2.1】
第4章数据结构与算法
正确答案:
你的答案:
请先在App中激活(应用市场搜“软考真题”)
知识点:
试卷:
2018年 上半年 下午试卷 案例

笔记

请先在App中激活(应用市场搜“软考真题”)

2019-05-11


布丁

请先在App中激活(应用市场搜“软考真题”)

2020-10-16


从南向北

请先在App中激活(应用市场搜“软考真题”)

2020-11-06


请先在App中激活(应用市场搜“软考真题”)

2019-10-27


请先在App中激活(应用市场搜“软考真题”)

2019-11-07