函数著名企业cc数据结构算法面试笔试题

cc 163 com  时间:2021-02-21  阅读:()

1请你分别划划OSI的七层网络结构图,和TP/ P的五层结构图 请你详细的解释一下IP协议的定义在哪个层上面,主要有什么作用 TCP与UD呢

U TCP在传输层 P在网络层 TCP/IP是英文Trasis s io C tro Potoc ol/ n ernt  otc 的缩写,意思是传输控制协议/网际协议 .TCPIP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T和X。25、以太网以及RS-3串行接口)之上。确切地说 CP/ P协议是一组包括TC协议和P协议UDP  e D atagram  otoc  )协议、 CMP  ntret  trl es age Protocol协议和其他一些协议的协议组。 TP/  协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务.该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、 网路层、传输层、话路层、表示层和应用层。而T CP/I通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:

应用层应用程序间沟通的层如简单电子邮件传输S MT、文件传输协议F T、网络远程访问协议T net等。 传输层在此层中它提供了节点间的数据传送服务如传输控制协议(TCP、用户数据报协议U等 TC和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。

互连网络层:负责提供基本的数据封包传送功能让每一块数据包都能够到达目的主机(但不检查是否被正确接收如网际协议(I).

网络接口层:对实际的网络媒体的管理定义如何使用实际网络(如thrnet、 S ial Line等来传送数据。

Q3请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?

一般意义上说交换机是工作在数据链路层。但随着科技的发展,现在有了三层交换机,三层交换机已经扩展到了网络层。也就是说:它等于“数据链路层+部分网络层”.交换机中传的是帧。通过存储转发来实现的。路由器是工作在网络层.路由器中传的是IP数据报.主要是选址和路由。Q4请问C++的类和C里面的s trct有什么区别?结构是一种将数据集合成组的方法,类是一种同时将函数和数据都集合成组的方法。结构和类在表面上的唯一区别是:类中的成员在默认情况下是私有的 而结构中的成员在默认情况下是公用的。  class foo    priva e:int dta ;  ulic:  vid  nc );

} 可以写成

ls  fo

{int dat 1   blicvid fn );



因为在类中默认的是私有的所以关键字pr v  就可以不写了。

如果想用结构完成这个类所作的相同的事就可以免去关键字ulic,并将公有成员放置在私有成员之前struct     {  v d func    private:int data ;  };

Q5:请讲一讲析构函数和虚函数的用法和作用?在JAVA里没有象+中的,所谓的析构函数,因为当一个对象不在使用的时候,它会自动被垃圾回收器回收,所以也就用不着析构函数了 那个inaliz e也只有在被垃圾回收器回收,才会被执行而且很多时候垃圾回收器并

不一定执行,所以它不能当做C++中的所谓的析构函数使用,虚函数在AVA里也是没有的比较象近的应该算是ab s tr ac  。Q 6全局变量和局部变量有什么区别是怎么实现的操作系统和编译器是怎么知道的

1、全局变量的作用用这个程序块,而局部变量作用于当前函数2、前者在内存中分配在全局数据区后者分配在栈区

)、生命周期不同:全局变量随主程序创建和创建随主程序销毁而销毁局部变量在局部函数内部,甚至局部循环体等内部存在退出就不存在4、使用方式不同通过声明后全局变量程序的各个部分都可以用到局部变量只能在局部使用Q7一些寄存器的题目,主要是寻址和内存管理等一些知识。 Q  808是多少位的系统?在数据总线上是怎么实现的?

806微处理器初次发布时这块1 位芯片仅包含29 0个晶体管,运行速度为5Mz。而当今基于86架构的奔腾4处理器,已经包含550万个晶体管运行速度提高了600倍以上,高达3 0z。 086是高性能的第三代微处理器,是nt l系列的16位微处理器,它是采用MO S工艺制造的 内部包含约2  000个晶体管。

8 86 有16根数据线和0根地址线 因为可用2位地址所以可寻址的地址空间达0即1M字节。 8086工作时只要一个5V电源和一相时钟时钟频率为5MHz。后来,It e 公司推出的8086—型微处理器时钟频率高达10 MHz 808—2型微处理器时钟频率达8 MHz。

 、局部变量能否和全局变量重名

答:能局部会屏蔽全局.要用全局变量需要使用‛   ‛

局部变量可以与全局变量同名在函数内引用这个变量时会用到同名的局部变量而不会用到全局变量。对于有些编译器而言在同一个函数内可以定义多个同名的局部变量比如在两个循环体内都定义一个同名的局部变量而那个局部变量的作用域就在那个循环体内.

2、如何引用一个已经定义过的全局变量

答:extern

可以用引用头文件的方式也可以用extr关键字如果用引用头文件方式来引用某个在头文件中声明的全局变理假定你将那个变写错了那么在编译期间会报错如果你用extrn方式引用时,假定你犯了同样的错误那么在编译期间不会报错而在连接期间报错.

3、全局变量可不可以定义在可被多个。 C文件包含的头文件中 为什么

答可以在不同的文件中以 tatic形式来声明同名全局变量。

可以在不同的文件中声明同名的全局变量前提是其中只能有一个C文件中对此变量赋初值此时连接不会出错

4、语句fr(  1  )有什么问题它是什么意思

答和whil e(  )相同。

5、 d o……wil和hi  e……d有什么区别

答:前一个循环一遍再判断后一个判断以后再循环

6、请写出下列代码的输出内容

以下是引用片段

#n c lu d e  m ain(

{int a b c d  a10b=a++  c++ad0a+pitf"  , ,dd  b c,d);   etun 0;  

答 10 12 20

7、 stati全局变量与普通的全局变量有什么区别  tat  c局部变量和普通局部变量有什么区别 sttic函数与普通函数有什么区别

全局变量(外部变量的说明之前再冠以s  a ic就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式.这两者在存储方式上并无不同.这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的.而静态全局变量则限制了其作用域 即只在定义该变量的源文件内有效,在同一源程序的其它源文件中不能使用它。 由于静态全局变量的作用域局限于一个源文件内只能为该源文件内的函数公用, 因此可以避免在其它源文件中引起错误。

从以上分析可以看出 把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期。把全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围。sttic函数与普通函数作用域不同。仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(sta ic  内部函数应该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数应该在一个头文件中说明,要使用这些函数的源文件要包含这个头文件s  t  c全局变量与普通的全局变量有什么区别:stat  c全局变量只初使化一次,防止在其他文件单元中被引用

  atic局部变量和普通局部变量有什么区别 sttic局部变量只被初始化一次下一次依据上一次结果值static函数与普通函数有什么区别 st  ic函数在内存中只有一份普通函数在每个被调用中维持一份拷贝

8、程序的局部变量存在于(堆栈)中,全局变量存在于静态区中动态申请数据存在于(堆)中。

9、设有以下说明和定义tp eef  ion  o  i; in k 5 ha  c;}D AEstru  dat   t cat DATE cw dob e dog;} too;

DATE mx

则语句 rintf "%d",  iz   struct ate +  eof(max) ;的执行结果是_52____

答:DATE是一个unio  变量公用空间。 里面最大的变量类型是in 5 占用20个字节 所以它的大小是0daa是一个 tru  , 每个变量分开占用空间。 依次为int + AT20 + doub e = 32.

所以结果是20+3 =52。

当然. .。在某些 位编辑器下, it可能是2字节,那么结果是in2  D AE0 +oule8 20

10、队列和栈有什么区别

队列先进先出栈后进先出

 1、写出下列代码的输出内容

以下是引用片段:

inld

n ic int a  { return(++a   }  int multi  nt  

et n ** ;

  tyedef nt(UNC1)(int in)   tpedef in (C2)  nt*n ,in *)   vod howFUN2 fun it arg1, ntar  

{ pinc  i   m =p(arg1) 

un & em  arg1  rg2)   pintf("dn‛ ,*arg2 ;

  ma n 

int a;showmlti 10,a)   retr 0

答 110

2、请找出下面代码中的所有错误

说明 以下代码是把一个字符串倒序如‚a d‛倒序后变为‚dba‛

以下是引用片段

1、 incld  str ng.‛

2、m ain 

3、 

4、 harsrc=‛ he  lo,world"; 5、 car de s =N UL; 6、 it les  ln sr    7、 dest= char lloc(  en);

8、 char d=de     9、 har s= rc len] 

1 、 wile   en——!=0)

11、 d++= -—;

12、 r n f(‛  ‛ ,dest   13、 rturn 0;

14、 

答:

方法1:

以下是引用片段:int mai()

{

harint len str  en(src);car dst  carm  lc ln1 ;/要为\0分配一个空间char d=destchar  = s c[len-1 //指向最后一个字符wile   en—!=  

d=s—-

d =0/尾部要加\0  prin f  % \n‛  de s  ) fre dest /使用完应当释放空间以免造成内存汇泄露return 0;

方法2

以下是引用片段:

inlu d e in c  d

main ) ca  str ]= ;char  

   it i=  i   tstr i

 tr[i]=s  r   en—i—1 ; str[len ]= ;    pritf("%s  ,

 tr);return 0

 .1    7,28 ,126请问28和126中间那个数是什么为什么

第一题的答案应该是4^-1=3

规律是n^3-1(当n为偶数,2 4 n^3+1 当为奇数1,3 5

答案:63

2。用两个栈实现一个队列的功能要求给出算法和思路!

设2个栈为A,B 一开始均为空.

入队

将新元素ush入栈A

出队:

1判断栈B是否为空

()如果不为空则将栈中所有元素依次op出并 s到栈B

  将栈B的栈顶元素p 出

这样实现的队列入队和出队的平摊复杂度都还是O(1)  比上面的几种方法要好。 3在c语言库函数中将一个字符转换成整型的函数是aool 吗这个函数的原型是什么

函数名: to 

功能:把字符串转换成长整型数

用 法: long ao  (const cha  *p r) 

程序例

以下是引用片段  inld e  #nlueint min voi  {   ong l;  char str = "98754

l  at  (  s  r   pr    f(‛ st   n   integer

= %ld\n" s  r, l)   eturn(0) 

13。对于一个频繁使用的短小函数在C语言中应用什么实现在C+中应用什么实现c用宏定义 c用inlin

1。直接链接两个信令点的一组链路称作什么

PPP点到点连接

  接入网用的是什么接口

16.oi都用了那些协议

17软件测试都有那些种类

黑盒针对系统功能的测试

白合测试函数功能各函数接口

1 .确定模块的功能和模块的接口是在软件设计的那个队段完成的

概要设计阶段

1 .enum strin

x 1,x2,x3=1   x4 x 5 }x;

问x=0x80105 08010f4 

20.

n igned cha  p1;u  i e lng  2

1 n ign  chr )0    00;

2= nsigned long* x1 000;

请问p1+5=;p25= ;

选择题:

21.E   e nt链接到Iternet用到以下那个协议

A.HC;。ARP;.UD PD CP;E. D

2属于网络层协议的是

.TCP;B。 IP C ICM;D. 2

3。Wind os消息调度机制是:

A指令队列;B。指令堆栈 C.消息队列D.消息堆栈;

2 u  igne so t hash nsign  hort key

{

 tr key> 256

}

请问h  ( 6),has 256的值分别是

.1。 16;B。 8 32 C.4.16;D.1 。 32

找错题:

25请问下面程序有什么错误int a[60 [ 0] 100]  i j,for k=0 k 〈100  k++)for(j=0;j<2 ; +

o ( =  i 〈60;i++a[i] j [k]0

把循环语句内外换一下

6。

以下是引用片段:

efiex_B 50

oi LmiQueryCSd(trc  SgCB  p )

nsignd c r cCmdN    。 。 .。fo (ucdNum=0 ucCdNu  {  。 。 。 。  。   }死循环

27。以下是求一个数的平方的程序,请找出错误:

#dfin e A(a ( a ()

n a=5

nt bb=QAR a+ ;

28

以下是引用片段: tpe f un igned chr BYTEint examly_fn(BYT gt_ln TE*gt_coe) 

BYTE gt_ufgtu=(YTE )MAC Max_GTLngh 

.。 。   。if gt_lenMaxT_Length    rtrn GT_Lengh_RO

; 

。 .  。   .  

问答题:

29.I Pone的原理是什么

IPV

30。 TCP/IP通信建立的过程怎样,端口有什么作用

三次握手确定是哪个应用程序使用该协议

  .1号信令和7号信令有什么区别,我国某前广泛使用的是那一种

32。列举5种以上的电话新业务

1。 static有什么用途 请至少说明两种

1在函数体一个被声明为静态的变量在这一函数被调用过程中维持其值不变。

2 在模块内 但在函数体外 一个被声明为静态的变量可以被模块内所用函数访问但不能被模块外其它函数访问.它是一个本地的全局变量。

3)在模块内一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是这个函数被限制在声明它的模块的本地范围内使用

 。引用与指针有什么区别  1 引用必须被初始化,指针不必。

2)引用初始化以后不能被改变指针可以改变所指的对象. 3 不存在指向空值的引用但是存在指向空值的指针.

3描述实时系统的基本特性 在特定时间内完成特定的任务实时性与可靠性.

4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别  全局变量储存在静态数据库,局部变量在堆栈。

5。什么是平衡二叉树? 左右子树都是平衡二叉树且左右子树的深度差值的绝对值不大于1.

 堆栈溢出一般是由什么原因导致的  没有回收垃圾资源。

7什么函数不能声明为虚函数?  nstructor函数不能声明为虚函数。

8.冒泡排序算法的时间复杂度是什么?

时间复杂度是On2)。

9.写出float x与‚零值‛比较的if语句。  if 〉 0.0000 x<—0.0000  

10.Intret采用哪种网络协议该协议的主要层次结构?

TcI协议 主要层次结构为 应用层/传输层/网络层/数据链路层/物理层。 1  In erne 物理地址和I地址转换采用什么协议?

ARP (ddress e o    on rotocol (地址解析協議

2.I地址的编码分为哪俩部分

I地址由两部分组成网络号和主机号。不过是要和‚子网掩码‛按位与上之后才能区分哪些是网络位哪些是主机位。

13.用户输入MN值,从1至开始顺序循环数数每数到M输出该数值直至全部输出.写出C程序。

循环链表用取余操作做

 .不能做sw tch 的参数类型是: witch的参数不能为实型。

 写出判断BC四个表达式的是否正确,若正确 写出经过表达式中 的值3分  ta=4; A)a += a++ ; () a+=(++ ;  (a++ + a; (++a = ++ ; a= ?答 C错误,左侧不是一个有效变量,不能赋值可改为(+ += ;

改后答案依次为,1   10 11

.某 位系统下 C++程序,请计算size  的值 分). char  tr[]= ‚‛cha  * =str int n  10

请计算

 iz ef s tr )     )s  zeof  p  = ?  ) sieof  n  =  (3) oi Fo  hr  tr 1 0{

请计算s  zeo    r )=  4  

 id *p  m a  o c 100  请计算  iz   (   =? )答 (1)17 ( 

4 3 4(4)4 5 4

3 回答下面的问题. (4分) (1)。头文件中的 ifndf/d ef e/edi 干什么用?预处理答:防止头文件被重复引用  ). i nclud 和  c ud ‚‛ 有什么区别 答:前者用来包含开发环境提供的库头文件后者用来包含自己编写的头文件. 3 在C++程序中调用被C 编译器编译后的函数为什么要加extern ‚"声明 答:函数和变量被C++编译后在符号库中的名字与C语言的不同被extrn "C"修饰的变量和函数是按照C语言方式编译和连接的。 由于编译后的名字不同 C+程序不能直接调用C 函数.++提供了一个C 连接交换指定符号e  ern ‚C‛来解决这个问题。  (4)。 switch )中不允许的数据类型是

答实型

。 回答下面的问题6分

1 。 od GetMmoy(h  *p  t um 

  =(har )alloc num);

  vod Te  t v d){

har   tr =NUL  tMe y(st   100   st  cy      ‛ ello"); r    f(str ; }

请问运行Te   函数会有什么样的结果 答输出‚ llo‛  (2  void Tes  vd {

har str char  malloc(1 0) 

 trpy   tr ;free(str    f(str  =NUL){

strcpy(  tr);printf s  r   }

}

请问运行Test函数会有什么样的结果 答:输出‚wr d"

(3 . har;

oid Test(vid){ har*  tr=NULL;

 tr=GetMmoy( ; printf(str   }请问运行Te  t函数会有什么样的结果?答:无效的指针输出不确定

5。 编写s  cat函数(6分

已知strcat函数的原型是char *strcat (c r*strDest  其中st Dest是目的字符串,st Src是源字符串。

(1不调用++/C 的字符串库函数请编写函数str t答  C源码:chr *=dst

hi    c )cp++; / fn nd f dst wh le( *cp++ = *sr+   * Copysrc t end of dst*

eturn  st)  /*  tur dst*/ 

(2)s  rat能把strSrc 的内容连接到s  rDest,为什么还要car*类型的返回值?答:方便赋值给其他变量

6MFC中CS  ing是类型安全类么

答:不是其它数据类型转换到CS tring可以使用CS trig的成员函数Frmat来转换

7。 C+中为什么用模板类。

答 (1)可用来创建动态增长和减小的数据结构

2它是类型无关的,因此具有很高的可复用性.

3)它在编译时而不是运行时检查数据类型保证了类型安全

4)它是平台无关的,可移植性

5)可用于基本数据类型

8 CingleLo c是干什么的。

答 同步多个线程对一个数据类的同时访问

9。NWT EXTTRI C是什么。 答物理字体结构用来设臵字体的高宽大小0。程序什么时候应该使用线程什么时候单线程效率高。

答 1.耗时的操作使用线程提高应用程序响应 2并行操作时使用线程如/S架构的服务器端并发线程响应用户的请求. 3。多CPU系统中,使用线程提高PU利用率 4改善程序结构。一个既长又复杂的进程可以考虑分为多个线程成为几个独立或半独立的运行部分这样的程序会利于理解和修改.

其他情况都使用单线程。

 1。Windows是内核级线程么.答见下一题

 .Linx有内核级线程么。 答线程通常被定义为一个进程中代码的不同执行路线。从实现方式上划分线程有两

种类型 ‚用户级线程‛和‚内核级线程‛ 。 用户线程指不需要内核支持而在用户程序中实现的线程其不依赖于操作系统核心应用进程利用线程库提供创建、 同步、调度和管理线程的函数来控制用户线程。这种线程甚至在象DO这样的操作系统中也可实现

Boomer.Host(年付3.5美)休斯敦便宜VPS

Boomer.Host是一家比较新的国外主机商,虽然LEB自述 we’re now more than 2 year old,商家提供虚拟主机和VPS,其中VPS主机基于OpenVZ架构,数据中心为美国得克萨斯州休斯敦。目前,商家在LET发了两款特别促销套餐,年付最低3.5美元起,特别提醒:低价低配,且必须年付,请务必自行斟酌确定需求再入手。下面列出几款促销套餐的配置信息。CPU:1core内存:...

萤光云(13.25元)香港CN2 新购首月6.5折

萤光云怎么样?萤光云是一家国人云厂商,总部位于福建福州。其成立于2002年,主打高防云服务器产品,主要提供福州、北京、上海BGP和香港CN2节点。萤光云的高防云服务器自带50G防御,适合高防建站、游戏高防等业务。目前萤光云推出北京云服务器优惠活动,机房为北京BGP机房,购买北京云服务器可享受6.5折优惠+51元代金券(折扣和代金券可叠加使用)。活动期间还支持申请免费试用,需提交工单开通免费试用体验...

RackNerd 黑色星期五5款年付套餐

RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...

cc 163 com为你推荐
yy频道中心YY怎么进入频道中心vista系统重装怎样重装vista系统无线路由器限速设置如何设置无线路由器局域网限速?金山杀毒怎么样用金山毒霸杀毒好吗?依赖注入依赖注入到底是为了解决什么问题的ps抠图技巧photoshop最基本的抠图方法和技巧!今日热点怎么删除“今日热点”到底要怎样才能取消弹窗,每次开机都会童之磊湖北中文在线数字出版有限公司怎么样?网易公开课怎么下载如何将网易公开课下载到电脑上?硬盘人500G的硬盘容量是多少啊?
linux虚拟主机 国外空间租用 中文域名查询 vps侦探 美国加州vps lunarpages edis mediafire下载 permitrootlogin 万网优惠券 本网站服务器在美国 100m免费空间 骨干网络 建立邮箱 idc资讯 双线主机 域名评估 免费防火墙 web服务器安全 最漂亮的qq空间 更多