台湾联发科技股份有限公司11月招聘面试题173道2020113

c语言中关键字static的作用是()。

A、在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。其他的函数不能引用它。

B、在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

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

D、以上都不是


参考答案:ABC


lambda函数是指()。

A、在一个函数内部通过调用自己完成问题的求解

B、不使用def定义函数的形式

C、一个函数不断被其他函数调用完成问题的求解

D、把函数作为参数的一种函数


参考答案:B


下列叙述中不正确的是( )。

A.在C语言中调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

B.在C的函数中,最好使用全局变量

C.外部变量可以在函数之间传递数据

D.自动变量实质上是一个函数内部的局部变量


正确答案:B
解析:编译时,编译系统不为局部变量分配内存单元,而是在程序运行中,当局部变量所在的函数被调用时,编译系统根据需要要临时分配内存,调用结束空间释放;全局变量一经定义,编译系统为其分配固定的内存单元,在程序运行的自始至终都占用固定的单元。在内存不确定的情况下,最好使用全局变量。


函数内部定义的局部变量当函数调用结束后被自动删除。

此题为判断题(对,错)。


正确答案:√


以下叙述中错误的是( )。

A.用Shell函数可以调用能够在Windows下运行的应用程序

B.用Shell函数可以调用可执行文件,也可以调用Visual Basic的内部函数

C.调用Shell函数的格式应为:〈变量名〉=Shell(……)

D.用Shell函数不能执行DOS命令


正确答案:B


台湾联发科技股份有限公司11月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:谈谈你对闭包的理解?可用的回答 : #闭包函数的实例 # outer是外部函数 a和b都是外函数的临时变量 def outer( a ): b = 10 # inner是内函数 def inner(): #在内函数中 用到了外函数的临时变量 print(a+b) # 外函数的返回值是内函数的引用 return inner if _name_ = _main_: # 在这里我们调用外函数传入参数5 #此时外函数两个临时变量 a是5 b是10 ,并创建了内函数,然后把内函数的引用返回存给了demo # 外函数结束的时候发现内部函数将会用到自己的临时变量,这两个临时变量就不会释放, 会绑定给 这个内部函数demo = outer(5) # 我们调用内部函数,看一看内部函数是不是能使用外部函数的临时变量 # demo存了外函数的返回值,也就是inner函数的引用,这里相当于执行inner函数 demo() # 15 demo2 = outer(7)问题 Q2:大数据的文件读取?可用的回答 : 1. 利用生成器generator 2. 迭代器进行迭代遍历:for line in file 问题 Q3:简述一下scrapy的基本流程?可用的回答 : scrapy分为9个步骤: 1. Spiders需要初始的start_url或则函数stsrt_requests,会在内部生成Requests给Engine; 2. Engine将requests发送给Scheduler; 3. Engine从Scheduler那获取requests,交给Download下载; 4. 在交给Dowmload过程中会经过Downloader Middlewares(经过process_request函数); 5. Dowmloader下载页面后生成一个response,这个response会传给Engine,这个过程中又经过了Downloader Middlerwares(经过process_request函数),在传送中出错的话经过process_exception函数; 6. Engine将从Downloader那传送过来的response发送给Spiders处理,这个过程经过Spiders Middlerwares(经过process_spider_input函数); 7. Spiders处理这个response,返回Requests或者Item两个类型,传给Engine,这个过程又经过Spiders Middlewares(经过porcess_spider_output函数); 8. Engine接收返回的信息,如果使Item,将它传给Items Pipeline中;如果是Requests,将它传给Scheduler,继续爬虫; 9. 重复第三步,直至没有任何需要爬取的数据 问题 Q4:一行代码实现1-100之和?可用的回答 :使用sum函数。sum(range(1, 101)问题 Q5:Python里面match()和search()的区别?可用的回答 :re模块中match(pattern,string,flags),检查string的开头是否与pattern匹配。re模块中research(pattern,string,flags),在string搜索pattern的第一个匹配值。问题 Q6:Python中的self是什么?可用的回答 :self是类的实例或对象。在Python中,self包含在第一个参数中。init方法中的self变量引用新创建的对象,而在其他方法中,它引用其方法被调用的对象。问题 Q7:描述数组、链表、队列、堆栈的区别?可用的回答 : 数组与链表是数据存储方式的概念,数组在连续的空间中存储数据,而链表可以在非连续的空间中存储数据; 队列和堆栈是描述数据存取方式的概念,队列是先进先出,而堆栈是后进先出; 队列和堆栈可以用数组来实现,也可以用链表实现。 问题 Q8:什么是Python?使用Python有什么好处?可用的回答 :Python是一种编程语言,包含对象,模块,线程,异常和自动内存管理。Python的好处在于它简单易用,可移植,可扩展,内置数据结构,并且它是一个开源的。问题 Q9:什么是反射?以及应用场景?可用的回答 : 通过字符串获取对象的方法称之为反射 python中可以通过如下方法实现: 1. getattr 获取属性 2. setattr 设置属性 3. hasattr 属性是否存在 4. delattr 删除属性 问题 Q10:如何解释Python?可用的回答 :Python语言是一种解释语言。Python程序直接从源代码运行。它将程序员编写的源代码转换为中间语言,再次转换为必须执行的机器语言。算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:3数相加题目描述如下:Given an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note:The solution set must not contain duplicate triplets.Example:Given array nums = -1, 0, 1, 2, -1, -4,A solution set is: -1, 0, 1, -1, -1, 23sum。a + b + c = 0.1. 第一次尝试首先是减去一个数,然后剩下的用twoSum的二分法做判断进行查找,结果非常慢。TLE.2. 学习了一波 O(n) 的算法:start-+ -end当等于之后,还有可能存在同样会相等的数:我们预先去重了,所以是唯一的,start和end同时朝着各自的方向进1就可以。然后就是去重问题:在非0的情况下,如果下标多于等于2个,则判断-2*A 是否在里面。在0的情况下,多于等于3个才可以。可做参考的解答如下:class Solution(object):

以下关于 Function函数对象的说法不正确的是()

A.函数可有可无返回值

B.调用函数时传递的参数是实参

C.函数调用时候,可以用一个变量来接收函数返回值

D.函数必须要有形式参数


答案:D


以下各项说法中,正确的是( )。

A.当通过引用传递参数时,函数创建一个变量以存储参数的值

B.当通过引用传递参数时,函数无法访问参数的值

C.当通过引用传递参数时,调用程序创建一个临时变量以容纳参数的值

D.当通过引用传递参数时,函数访问调用程序中参数的原始值


正确答案:D
解析:本题考核函数参数传递中的引用传递。先来理解引用的概念:①“引用”实际上是给一个已知变量起个别名,对引用的操作也就是对被它引用的变量的操作。②C++中的变量名对应着内存的存储位置,可以使用一个特定的内存地址访问到它,引用则引入变量的另一个名字,它和这个变量具有同一内存地址。③当通过引用传递参数时,只是把请求调用的程序中实参的引用传递给函数(实际上是实参的内存地址被传递了)。


当一次函数调用发生时,对其执行过程正确描述的是(28)。

A.复制实参变量的值→控制流转移到该函数的起始位置→分配一个栈帧→开始执行该函数→控制流返回到函数调用点

B.控制流转移到该函数的起始位置→复制实参变量的值→分配一个栈帧→开始执行该函数→控制流返回到函数调用点

C.控制流转移到该函数的起始位置→分配一个栈帧→复制实参变量的值→开始执行该函数→控制流返回到函数调用点

D.分配一个栈帧→复制实参变量的值→控制流转移到该函数的起始位置→开始执行该函数→控制流返回到函数调用点


正确答案:D
解析:当一次函数调用发生时,其执行过程可归纳为以下5个步骤:①在内存的栈空间中为其分配一个栈帧,用来存放该函数的形参变量和局部变量;②把实参变量的值复制到相应的形参变量中;③控制流转移到该函数的起始位置;④该函数开始执行;⑤当这个函数执行完以后,控制流和返回值返回到函数调用点。


当一次函数调用发生时,对它的执行过程正确的描述是(28)。

A.分配一个栈帧→复制实参变量的值→控制流转移到该函数的起始位置→开始执行该函数→控制流返回到函数调用点

B.控制流转移到该函数的起始位置→复制实参变量的值→分配一个栈帧→开始执行该函数→控制流返回到函数调用点

C.控制流转移到该函数的起始位置→分配一个栈帧→复制实参变量的值→开始执行该函数→控制流返回到函数调用点

D.复制实参变量的值→控制流转移到该函数的起始位置→分配一个栈帧→开始执行该函数→控制流返回到函数调用点


正确答案:A
解析:当一次函数调用发生时,其执行过程的先后顺序如下。1)在内存的栈空间中为其分配一个栈帧,用来存放该函数的形参变量和局部变量:2)把实参变量的值复制到相应的形参变量中;3)控制流转移到该函数的起始位置;4)该函数开始执行;5)当这个函数执行完以后,控制流和返回值返回到函数调用点。


以下叙述中错误的是

A.在函数外部定义的变量在所有函数中都有效

B.在函数内部定义的变量只能在本函数范围内使用

C.函数中的形参属于局部变量

D.在不同的函数中可以使用相同名字的变量


正确答案:A
全局变量有效范围是从定义的位置开始到所在源文件的结束,在这区域内的函数才可以调用,如果在定义函数之后,定义的变量,该变量不能被之前的函数访问所以A选项说法错误,答案为A选项。

更多 “台湾联发科技股份有限公司11月招聘面试题173道2020113” 相关考题
考题 判断题在函数内部没有任何声明的情况下直接为某个变量赋值,这个变量一定是函数内部的局部变量。A 对B 错正确答案:对解析:暂无解析

考题 闭包可以实现内部函数对外部函数变量的引用。正确答案:正确

考题 单选题已定义好有参函数f(m),其中形参m是整形量。下面调用该函数,传递参数为5,将返回的函数值赋给变量t。以下正确的是()。A t=f(m)B t=Callf(m)C t=f(5)D t=Callf(5)正确答案:B解析:暂无解析

考题 在函数中声明的静态变量()A、在函数体中可见,函数结束调用时释放。B、在项目中可见,函数结束调用时释放。C、在函数体中可见,项目结束调用时释放。D、在项目中可见,项目结束调用时释放。正确答案:B

考题 单选题在函数中声明的静态变量()A 在函数体中可见,函数结束调用时释放。B 在项目中可见,函数结束调用时释放。C 在函数体中可见,项目结束调用时释放。D 在项目中可见,项目结束调用时释放。正确答案:B解析:暂无解析

考题 单选题若有函数声明:void fun(float array[],int*ptr);以下叙述正确的是(  )。A 函数参数array,ptr都是指针变量B 函数参数array不是指针变量,ptr是指针变量C 调用函数时,实参数组的值将一一复制给array数组D 调用函数时,array是按值传送,ptr是按地址传送正确答案:D解析:数组名为数组的首地址,也是指向数组的指针,所以array和ptr都是指针,A项正确,B项错误。调用函数时,将实参数组首地址赋给指针array,而不是传递整个数组元素,C项错误。调用函数时,array与ptr都是按地址传送的,D项错误。答案选择A选项。

考题 函数内部定义的局部变量当函数调用结束后被自动删除。正确答案:正确

考题 python中,闭包的三个特点是()A、函数嵌套函数B、内部函数用到外层函数的参数C、最后返回内层函数的引用D、函数必须有参数正确答案:A,B,C

考题 多选题python中,闭包的三个特点是()A函数嵌套函数B内部函数用到外层函数的参数C最后返回内层函数的引用D函数必须有参数正确答案:C,D解析:暂无解析

考题 判断题函数内部定义的局部变量当函数调用结束后被自动删除。A 对B 错正确答案:错解析:暂无解析