黑马程序员技术交流社区
标题: 今天老师给讲的百度的面试题 [打印本页]
作者: 楠瓜果 时间: 2014-7-19 19:45
标题: 今天老师给讲的百度的面试题
#include <stdio.h>
// 1.定义指针函数实现数组排序(百度)
void printArray(int *array, int len);
// typedef 给数据类型起别名
typedef int (*Pointer)(int a,int b);
int compare(int a,int b)
{
return a < b;
}
//函数指针作为参数,那个传入的函数是一个回调函数
void selectSort(int *array,int length,Pointer compare)
{
for (int i = 0; i < length -1; i++) {
for (int j = i + 1; j < length; j++) {
if (array < array[j]) {
int temp = array;
array = array[j];
array[j] = temp;
}
}
}
}
int main(int argc, const char * argv[])
{
int nums[] = {10,8,6,11,12,3};
int length = sizeof(nums) / sizeof(int);
printArray(nums, length);
selectSort(nums, length,compare);
printArray(nums, length);
typedef int Integer;
Integer num = 10;
printf("%d\n",num);
return 0;
}
void printArray(int *array, int len)
{
for (int i = 0; i < len; i++) {
printf("%d ",array);
}
printf("\n");
}
作者: fantacyleo 时间: 2014-7-19 20:42
stdlib.h中的qsort就是传函数指针排序的。oc中NSArray排序传block也是这个道理
作者: Devchen 时间: 2014-7-21 19:39
什么老师?
作者: sl7s78s8 时间: 2014-7-21 21:17
感觉我们应该在一个班
作者: 楠瓜果 时间: 2014-7-21 22:35
是啊,传智的基础班?
作者: 诸葛佰通 时间: 2014-7-21 23:01
为毛XCODE里面运行你这代码打印出来的很诡异呢。。。
题目是甚麽?
1.定义指针函数实现数组排序(百度)
就这个?
作者: 楠瓜果 时间: 2014-7-21 23:26
是的,具体反正就是这样
作者: 阳光地带 时间: 2014-7-21 23:27
你五号去就业班,还是继续在基础班?基础班已经开始啦?
作者: sl7s78s8 时间: 2014-7-22 21:06
恩,我也是基础班的,就感觉这题目似曾相识....
作者: 愿望 时间: 2014-7-22 21:09
已经上课了么》
作者: 楠瓜果 时间: 2014-7-23 01:00
哈哈,那是同学喽
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |