微软面试题:编程实现两个正整数的除法
2012-03-23 22:42 Rollen Holt 阅读(2881) 评论(0) 收藏 举报编程实现两个正整数的除法,当然不能用除法操作符。
// return x/y.
int div(const int x, const int y) {
....
}
// return x/y
int div(const int x, const int y) {
int left_num = x;
int result = 0;
while (left_num >= y) {
int multi = 1;
while (y * multi <= (left_num >> 1)) {
multi = multi << 1;
}
result += multi;
left_num -= y * multi;
}
return result;
}
扩展问题:
如果需要测试上面这个函数,需要哪些测试用例?==============================================================================
本博客已经废弃,不在维护。新博客地址:http://wenchao.ren
我喜欢程序员,他们单纯、固执、容易体会到成就感;面对压力,能够挑灯夜战不眠不休;面对困难,能够迎难而上挑战自我。他
们也会感到困惑与傍徨,但每个程序员的心中都有一个比尔盖茨或是乔布斯的梦想“用智慧开创属于自己的事业”。我想说的是,其
实我是一个程序员
==============================================================================
浙公网安备 33010602011771号