作者magica (似我非我)
看板Soft_Job
标题Re: [请益] MTK 面试测验请教
时间Sat Jun 12 01:20:33 2010
※ 引述《yoco315 (眠月)》之铭言:
: ※ 引述《hanck ( )》之铭言:
: : void main(int n)
: : {
: : if n==33 execute func1;
: : if n==67 execute func2;
: : if n==324 execute func3;
: : if n==231 execute func4;
: : if n==687 execute func5;
: : }
: void 面 () {
: void (*f[8])() = { 0, func1, 0, func2, func3, func4, 0, func5 } ;
: f[n%8]() ;
: }
另一个想法:
int main(int n)
{
if(n>>9)
func5();
else if(n>>8)
func3();
else if(n>>7)
func4();
else if(n>>6)
func2();
else if(n>>5)
func1();
return 0;
}
和零比较会不会比较快?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.82.208
1F:→ guest0079:你这样何不直接 if(n==33)...; 06/12 01:23
2F:→ magica:我以为和零比较比较快..? 06/12 01:27
3F:推 slalala:都说不能用if else了 06/12 21:09
4F:→ loveflames:楼上请仔细看第二题 06/12 22:12