欢迎来到天天文库
浏览记录
ID:5540252
大小:60.00 KB
页数:12页
时间:2017-12-17
《经典的经纬博客笔试题详解分享》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、我的笔试之一:仟游篇转自新浪经纬博客1.输出 chars1[]="2kgames"; char*s2[]={"2kgames" }; chars3[20]="2kgames"; cout<2、p(); } virtualvoidp() { q(); } virtualvoidq() { cout<<'A'; }}; classB:publicA{public: B() { p(); } ~B() { p(); } voidq() { cout<<'B'; }}; intmain(){ A*p=newB; deletep;} 答案:ABA 3.用一个C语言表达式判断一个数是否位2的N次幂。 答案:x==(((x^(~0x0))+1)&x) 4.写一个高性能的函数把一个int乘以9 答案3、:intMultiply_9(inta){ return((a<<3)+a);} 5.请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1解答:intcheckCPU(){ unionw { inta; charb; }c; c.a=1; return(c.b==1);} 6.int(*(*f)(int,int))(int)这里的f是什么? 答案:f是指针,指向一个参数为(int,int),返回值为一个指针的函数这个返回的指针指向一个参数为(int4、),返回值为int的函数我的笔试之二:思科篇·1.typedefstruct{ chardata[10];}T1; typedefstruct{ T1*p; chardata[0];}T2;sizeof(T2)==? 答案:4 2.含N个元素的一个数组,数组的值的范围是1~N-1,找出重复的那个值。 答案:intarray[N]; intFindRepeat(void){ intflag[N]={0}; inti; for(i=0;i5、 returnarray[i]; else flag[array[i]]=1; }} 3.下面哪些编译通不过? AvoidT() { constintN=100; inta[N]; a[2]=42; } BvoidT() { *((int*const)0x23567890)=5; } Cchar*fuc(void) { chara[4]; strcpy(a,"abcd"); returna; } 答案:ABC都可以通过编译。我的笔试6、之三:趋势科技篇·1.找错误(1)voidTest(constintv) { int*p; p=v; } 答案:不能把非const指针指向const变量。应该是:constint*p; (2)voidTest(constint&v) { constint&p; p=v; } 答案:引用必须在定义的时候初始化。应该是:constint&p=v; 2.编程题,翻转链表。 答案: typedefstructnode{ intvalue; structno7、de*next;}SLink; SLink*ReverseLink(SLink*h){ SLink*pre,*cur,*next; pre=NULL; cur=h; next=cur->next; while(next) { cur->next=pre; pre=cur; cur=next; next=next->next; } returncur;} 3.写出输出结果classA{public: A() { f(0); } virtualvoidf(intn) { cout<<"A0:"<8、<
2、p(); } virtualvoidp() { q(); } virtualvoidq() { cout<<'A'; }}; classB:publicA{public: B() { p(); } ~B() { p(); } voidq() { cout<<'B'; }}; intmain(){ A*p=newB; deletep;} 答案:ABA 3.用一个C语言表达式判断一个数是否位2的N次幂。 答案:x==(((x^(~0x0))+1)&x) 4.写一个高性能的函数把一个int乘以9 答案
3、:intMultiply_9(inta){ return((a<<3)+a);} 5.请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1解答:intcheckCPU(){ unionw { inta; charb; }c; c.a=1; return(c.b==1);} 6.int(*(*f)(int,int))(int)这里的f是什么? 答案:f是指针,指向一个参数为(int,int),返回值为一个指针的函数这个返回的指针指向一个参数为(int
4、),返回值为int的函数我的笔试之二:思科篇·1.typedefstruct{ chardata[10];}T1; typedefstruct{ T1*p; chardata[0];}T2;sizeof(T2)==? 答案:4 2.含N个元素的一个数组,数组的值的范围是1~N-1,找出重复的那个值。 答案:intarray[N]; intFindRepeat(void){ intflag[N]={0}; inti; for(i=0;i5、 returnarray[i]; else flag[array[i]]=1; }} 3.下面哪些编译通不过? AvoidT() { constintN=100; inta[N]; a[2]=42; } BvoidT() { *((int*const)0x23567890)=5; } Cchar*fuc(void) { chara[4]; strcpy(a,"abcd"); returna; } 答案:ABC都可以通过编译。我的笔试6、之三:趋势科技篇·1.找错误(1)voidTest(constintv) { int*p; p=v; } 答案:不能把非const指针指向const变量。应该是:constint*p; (2)voidTest(constint&v) { constint&p; p=v; } 答案:引用必须在定义的时候初始化。应该是:constint&p=v; 2.编程题,翻转链表。 答案: typedefstructnode{ intvalue; structno7、de*next;}SLink; SLink*ReverseLink(SLink*h){ SLink*pre,*cur,*next; pre=NULL; cur=h; next=cur->next; while(next) { cur->next=pre; pre=cur; cur=next; next=next->next; } returncur;} 3.写出输出结果classA{public: A() { f(0); } virtualvoidf(intn) { cout<<"A0:"<8、<
5、 returnarray[i]; else flag[array[i]]=1; }} 3.下面哪些编译通不过? AvoidT() { constintN=100; inta[N]; a[2]=42; } BvoidT() { *((int*const)0x23567890)=5; } Cchar*fuc(void) { chara[4]; strcpy(a,"abcd"); returna; } 答案:ABC都可以通过编译。我的笔试
6、之三:趋势科技篇·1.找错误(1)voidTest(constintv) { int*p; p=v; } 答案:不能把非const指针指向const变量。应该是:constint*p; (2)voidTest(constint&v) { constint&p; p=v; } 答案:引用必须在定义的时候初始化。应该是:constint&p=v; 2.编程题,翻转链表。 答案: typedefstructnode{ intvalue; structno
7、de*next;}SLink; SLink*ReverseLink(SLink*h){ SLink*pre,*cur,*next; pre=NULL; cur=h; next=cur->next; while(next) { cur->next=pre; pre=cur; cur=next; next=next->next; } returncur;} 3.写出输出结果classA{public: A() { f(0); } virtualvoidf(intn) { cout<<"A0:"<8、<
8、<
此文档下载收益归作者所有