有十个整数:3,20,1,40,5,6,80,9,7,10\n\n编程:\n\n1)编写输出函数\n\n2)调用qsort排序并输出\n\n3)调用bsearch查找并输出被查找的数在数组中的下表
时间: 2023-04-30 13:06:12 浏览: 138
1)输出函数为:
void printArray(int arr[], int len){
for(int i=0; i<len; i++){
printf("%d ", arr[i]);
}
}
2)使用qsort排序并输出:
int cmp(const void *a, const void *b){
return *(int*)a - *(int*)b;
}
//调用
qsort(arr, len, sizeof(int), cmp);
printArray(arr, len);
3)使用bsearch查找并输出:
int cmp(const void *a, const void *b){
return *(int*)a - *(int*)b;
}
//调用
int num = 6;
int *ptr = (int*)bsearch(&num, arr, len, sizeof(int), cmp);
if(ptr != NULL){
printf("%d在数组中的索引值为:%d", num, ptr-arr); //数组下标从0开始
}else{
printf("%d不在数组中", num);
}
阅读全文