佳都新太科技股份有限公司5月招聘面试题185道2020513

下列程序执行后的输出结果是

void func1(int i);

void func2(int i);

char st[]="hello,friend!";

void func1(int i)

{ printf("%c",st[i]);

if(i<3){i+=2;func2(i);}}

void func2(int i)

{ printf("%c",st[i]);

if(i<3){i+=2;func1(i);}}

main()

{ int i=0; func1(i); printf("\n");}

A.hello

B.hel

C.hlo

D.hlm


正确答案:C


以下程序的执行结果是______ includevoid func(int); void main(){ int k=4 func(k)

以下程序的执行结果是______

include<iostream.h>

void func(int);

void main()

{

int k=4

func(k) ;

func(k) :

cout<<end1;

}

void func(int a)

{

static int m=0;

m+=a;

cout<<m<<" ";

}


正确答案:48
48


( 21 )有如下函数定义:

void func ( int a,int & b ) {a++; b++;}

若执行代码段:

int x=0 ,y=1

func ( x,y ) ;

则变量 x 和 y 值分别是

A ) 0 和 1

B ) 1 和 1

C ) 0 和 2

D ) 1 和 2


正确答案:C


对于类定义

class A{

public:

virtual void funcl(){}

void func2(){}

};

class B:public A

{

public:

void funcl(){cout <<"class B func 1”<

virtual void func2(){cout <<"class B func 2"<

};

下面正确的叙述是

A.A::func2()和B::funcl()都是虚函数

B.A::func2()和B::funcl()都不是虚函数

C.B::funcl()是虚函数,而A::func2()不是虚函数

D.B::funcl()不是虚函数,而A::func2()是虚函数


正确答案:C


对于类定义

class A{

public:

virtual void func1( ) {}

void func2( ) {}

};

class B: public A{

public:

void func1( ) {cout < < "class B func 1" < < endl;}

virtua1 void func2( ) {cout < < "class B func 2" < < endl;}

};

下面正确的叙述是

A.A: :func2( ) 和B: :func1( ) 都是虚函数

B.A: :func2( ) 和B: :func1( ) 都不是虚函数

C.B: :func1( ) 是虚函数,而A: :func2( ) 不是虚函数

D.B: :func1( ) 不是虚函数,而A: :func2( ) 是虚函数


正确答案:C
解析:基类中说明的虚函数,在派生类中自然就是虚函数,所以类B中func1( ) 是虚函数;而类A中的func2没有被关键字virtual修饰,所以不是虚函数。


佳都新太科技股份有限公司5月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:为何基于tcp协议的通信比基于udp协议的通信更可靠?可用的回答 : TCP的可靠保证,是它的三次握手双向机制,这一机制保证校验了数据,保证了他的可靠性。 而UDP就没有了,udp信息发出后,不验证是否到达对方,所以不可靠。 不过UDP的发送速度是TCP比不了的,而且UDP的反应速度更快。 问题 Q2:装饰器的作用和功能?可用的回答 : 1. 引入日志 2. 函数执行时间统计 3. 执行函数前预备处理 4. 执行函数后的清理功能 5. 权限校验等场景 6. 缓存 问题 Q3:def func(a,b=) 这种写法有什么坑?可用的回答 : def func(a,b=): b.append(a) print(b) func(1) func(1) func(1) func(1) 如:看下结果 1 1, 1 1, 1, 1 1, 1, 1, 1 函数的第二个默认参数是一个list,当第一次执行的时候实例化了一个list,第二次执行还是用第一次执行的时候实例化的地址存储, 所以三次执行的结果就是 1, 1, 1 ,想每次执行只输出1 ,默认参数应该设置为None。 问题 Q4:什么又是yield from呢?可用的回答 :简单地说,yield from generator 。实际上就是返回另外一个生成器。问题 Q5:如何将值添加到python数组?可用的回答 :可以使用append(),extend()和insert(i,x)函数将元素添加到数组中。问题 Q6:描述数组、链表、队列、堆栈的区别?可用的回答 : 数组与链表是数据存储方式的概念,数组在连续的空间中存储数据,而链表可以在非连续的空间中存储数据; 队列和堆栈是描述数据存取方式的概念,队列是先进先出,而堆栈是后进先出; 队列和堆栈可以用数组来实现,也可以用链表实现。 问题 Q7::-1表示什么?可用的回答 ::-1用于反转数组或序列的顺序。问题 Q8:什么是python模块?Python中有哪些常用的内置模块?可用的回答 :Python模块是包含Python代码的.py文件。此代码可以是函数类或变量。一些常用的内置模块包括:sys、math、os、re、random、time,datatime、json等问题 Q9:请用代码简答实现stack?可用的回答 : stack的实现代码(使用python内置的list),实现起来是非常的简单,就是list的一些常用操作 class Stack(object): def _init_(self): self.stack = def push(self, value): # 进栈 self.stack.append(value) def pop(self): #出栈 if self.stack: self.stack.pop() else: raise LookupError(stack is empty!) def is_empty(self): # 如果栈为空 return bool(self.stack) def top(self): #取出目前stack中最新的元素 return self.stack-1 问题 Q10:请用代码简答实现stack?可用的回答 : stack的实现代码(使用python内置的list),实现起来是非常的简单,就是list的一些常用操作 class Stack(object): def _init_(self): self.stack = def push(self, value): # 进栈 self.stack.append(value) def pop(self): #出栈 if self.stack: self.stack.pop() else: raise LookupError(stack is empty!) def is_empty(self): # 如果栈为空 return bool(self.stack) def top(self): #取出目前stack中最新的元素 return self.stack-1 算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:最长的公共前缀题目描述如下:Write a function to find the longest common prefix string amongst an array of strings.If there is no common prefix, return an empty string .Example 1:Input: flower,flow,flightOutput: flExample 2:Input: dog,racecar,ca

有如下函数定义;void func(int a,int & b){a++;b++;}若执行代码段:int x=0,y=1;func(x,y);则变量x和y的值分别是

A.0和1

B.1和1

C.0和2

D.1和2


正确答案:C
解析:本题考查的知识点是:函数参数的传递方式。C++的默认参数传递方式是传值,即将实参值的副本传递(拷贝)给被调用函数的形参。如果需要传地址,可通过传递指针、引用或数组类型的参数来实现。传值时,对形参的改变不会影响到实参;而传地址,则会同时改变实参。本题中形参a是普通参数,即传值调用,函数中对a增1不会影响到实参x的值;而形参b是引用,即传址调用,函数中对b增1同时也改变了实参y的值(y也增1了)。故最终结果是0和2,应该选择C。


下列函数的功能是【 】。include int Func(int a,int b) {if (a>b) return 1; else if

下列函数的功能是【 】。

include<iostream. h>

int Func(int a,int b)

{

if (a>b) return 1;

else if(a==b) return 0;

else return -1;

}


正确答案:比较两个整数a和b的大小若a>b则返回1若a等于b则返回0否则返回-1。
比较两个整数a和b的大小,若a>b则返回1,若a等于b,则返回0,否则返回-1。


下列程序执行后的输出结果是______。

A.hello

B.hel

C.hlo

D.hlm void func1 (int i); void func2 (int i); char st[]="hello,friend!"; void func1(int i) { printf("%c",st[i]); if(i<3){ i+=2;func2(i); } } void func2 (int i) { printf("%c",st[i]); if(i<3){ i+=2;func1(i); } } main() { int i=0;func1(i);printf("\n");}


正确答案:C


对于类定义: class A{ public: virtual void funcl(){} void func2(){} ); class B:public A{ public: voidfuncl(){cout<<“class Bfunc 1”<<endl;} virtual void func2(){cout<<“class B func 2”<<endl;} }; 下面正确的叙述是( )。

A.A::func2()和B::funcl()都是虚函数

B.A::func2()和B::funcl()都不是虚函数

C.B::funcl()是虚函数,而A::func2()不是虚函数

D.B::funcl()不是虚函数,而A::func2()是虚函数


正确答案:C
解析: 基类中说明的虚函数,在派生类中自然就是虚函数,所以类B中funcl()是虚函数;而类A中的func2没有被关键宇virtual修饰,所以不是虚函数。


对于类定义 classA{ public: virtual void func1(){} void func2(){} }; Class B:public A{ public: void funcl(){cout <<”class B func1” <<end1;} virtual void func2(){cout <<"class B func 2" <<end1;} }; 下面正确的叙述是

A.A∷func2()和B∷funcl()都是虚函数

B.A∷func2()和B∷funcl()都不是虚函数

C.B∷funcl()是虚函数,而A∷func2()不是虚函数

D.B∷funcl()不是虚函数,而A∷func2()是虚函数


正确答案:C
解析:基类中说明的虚函数,在派生类中自然就是虚函数,所以类B中funcl()是虚函数;而类A中的fanc2没有被关键字virtual修饰,所以不是虚函数。

更多 “佳都新太科技股份有限公司5月招聘面试题185道2020513” 相关考题
考题 有如下函数定义: void funC(int a,int&B. {a++;b++;} 若执行代码段: int x=0,Y = 1; funC(X,Y); 则变量x和y的值分别是( )。A.0和1B.1和1C.0和2D.1和2正确答案:C函数参数的3种传递方式:①将变量名作为形参和实参,即传值方式;②传递变量指针;③引用形参本题中实参x为传值方式,所以x的值不会改变;Y为引用形参,所以会改变。故本题答案为c。

考题 已知函数定义def func(*p):return sum(p),那么表达式func(1,2,3)的值为()。正确答案:6

考题 已知函数定义def func(*p):return sum(p),那么表达式func(1,2,3,4)的值为()。正确答案:10

考题 填空题已知函数定义def func(*p):return sum(p),那么表达式func(1,2,3)的值为()。正确答案:6解析:暂无解析

考题 填空题已知函数定义def func(**p):return’’.join(sorted(p)),那么表达式func(x=1,y=2,z=3)的值为()。正确答案:'xyz'解析:暂无解析

考题 对于类定义: class A{ public: virtual void func1(){} Void func2 (){} }; class B:public A{ public: void func1(){cout<<"class B func 1"<<end1;} virtual void func2(){cout<<"class B func 2"<<end1;} };下面叙述正确的是( )。A.A::func2()和B::func1()都是虚函数 B.A::func2()和B::func1()都不是虚函数 C.B::func1()是虚函数,而A::func2()不是虚函数 D.B::func1()不是虚函数,而A::func2()是虚函数 答案:C解析:继承是面向对象程序设计最重要的特征,指的是一个新类从已有的类那里获得其已有的特征,并可以添加新的特征。虚函数的作用是允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问基类和派生类中的同名函数。题中类A声明了两个函数,一个虚函数func1()和一个函数func2(),类B继承于类A,那就继承了类A的特征,因此,类B中的func1()是一个虚函数。在类B中又把func2()声明成虚函数,给func2()增加了新的特征,所以,类B中的两个函数都是虚函数,而在类A中只有func1()是虚函数。

考题 对于类定义: classA{ public: virtualvoidfuncl(){} voidfunc2(){} }; classB:publicA{ public: voidfuncl(){cout<<"classBfunc1"<<endl;} virtualvoidfunc2(){cout<<"classBfunc2" <<endl;} }; 下面正确的叙述是( )。A.A::func2( )和B::func1( )都赵虚函数B.A::rune2( )和B::func1( )都不是虚函数C.B::func1( )是虚函数,而A::fune2( )不是虚函数D.B::func1( )不是虚函数,而A::func2( )是虚函数正确答案:CC。【解析】基类中说明的虚函数,在派生类中自然就是虚函数,所以类B中funcl是虚函数;而类A中的func2没有被关键字virtual修饰;所以不是虚函数。

考题 下列程序写法不正确的是( )。A.func1(){…func2(){…}…}B.func1(){…}func2(){…}C.func2();func1(){…func2();…}func2(){…}D.func1(){…func1();…}正确答案:A解析:一个函数不能在另一个函数中定义,即不能嵌套定义。

考题 知函数func的定义为:voidfunc(){……}则函数定义中void的含义是()A、执行函数func后,函数没有返回值B、执行函数func后,函数不再返回C、执行函数func后,可以返回任何类型D、以上答案均不正确正确答案:A

考题 对于类定义 class A { public: virtual void funcl(){} void func2(){} }; class D:public A{ public: void funcl(){cout<< "class B rune 1"<<end1;} virtual void func2(){cout<< "class B func 2"<<end1;} }; 下面正确的叙述是 ______。A.A::func2()和B::funcl()都是虚函数B.A::func2()和B::funcl()都不是虚函数C.B::func1()是虚函数,而A::func2()不是虚函数D.B::func1()不是虚函数,而A::func2()是虚函数正确答案:C