几道面试题
2005-11-03 20:16
288 查看
1.请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句
2.如何输出源文件的标题和目前执行行的行数
3.两个数相乘,小数点后位数没有限制,请写一个高精度算法
4.写一个病毒
5.有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?
第1题: 大致思路应该是先c=a-b; 然后把c转换成2进制,它的最高位是1的话就为负,就是a小,
关键是怎么取c的最高位,c&(1<<(sizeof(c)-1)等于2的sizeof(c)-1次方的话最高位就是1,我觉得很经典.
第2题:1,2->
1<-
5,10->
2<-
1,2->
2.如何输出源文件的标题和目前执行行的行数
3.两个数相乘,小数点后位数没有限制,请写一个高精度算法
4.写一个病毒
5.有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?
第1题: 大致思路应该是先c=a-b; 然后把c转换成2进制,它的最高位是1的话就为负,就是a小,
关键是怎么取c的最高位,c&(1<<(sizeof(c)-1)等于2的sizeof(c)-1次方的话最高位就是1,我觉得很经典.
第2题:1,2->
1<-
5,10->
2<-
1,2->