专注在线职业教育23年
下载APP
小程序
希赛网小程序
导航

预约成功后,不错过重要时期

点击预约

2019上半年程序员应用技术题二

责编:胡媛 2020-09-15

程序员应用技术在下午考试,希赛小编为大家整理了2019上半年程序员应用技术题二,供考生备考练习。

阅读以下说明和C代码,回答问题,将解答写入答题纸的对应栏内。

【说明】

函数bubbleSort(int arr[], int n, int (*compare)(int,int))的功能是根据调用时传递的比较 函数compare对数组arr的前n个元素进行排序。

【C代码】

#define swap(a, b) { a = a∧b; b = a∧b; a = a∧b;} //交换 a 与 b 的值

int less(int x,int y)

{

return ((x<y) ? 1 : 0);

}

int larger(int x, int y)

{

return ((x>y) ? 1 : 0);

}

void bubbleSort(int arr[ ], int n, int (*compare)(int,int))

{      int i,j;

int swapped = 1;

for( i=0; swapped; i++) {

swapped = 0;

for(j=0; j<n-l-i; j++)

if ( compare( arr[j+1], arr[j])) {

swap( arr[j+1], arr[j]);

swapped =1;

}

}

}

问题内容:

【问题】

设有如下数组定义:

int data1[ ] = {4, 2, 6, 3, 1};

int data2[ ] = {4, 2, 6, 3, 1};

int data3[ ] = {4, 2, 6, 3, 1};

请分别给出下面的函数调用执行后,数组data1、data2和data3各自的元素序列。

(1)bubbleSort(data1, 5, less);

(2) bubbleSort(data2, 5, larger);

(3) bubbleSort(data3, 3, larger);

试题练习:历年真题每日一练  |  在线试题库

备考资料:视频课程学习资料  |  免费课程

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关阅读
查看更多

加群交流

公众号

客服咨询

考试资料

每日一练