以下是小编精心整理的汽车公司笔试题目选择题(共含9篇),希望对大家有所帮助。同时,但愿您也能像本文投稿人“Braveheart”一样,积极向本站投稿分享好文章。
汽车公司笔试题目(选择题)
选择题
问题1:你为什么想离开目前的职务?( )
A.别的同仁认为我是老板前的红人,所以处处排挤我,
B.调薪的结果令我十分失望,完全与我的付出不成正比。
C.老板不愿授权,工作处处受限,绑手绑脚、很难做事。
D.公司营运状况不佳,大家人心惶惶。
问题2:你找工作时,最重要的考虑因素为何?( )
A.公司的远景及产品竞争力。
B.公司对员工生涯规划的重视及人性化的管理。
C.工作的性质是否能让我发挥所长,并不断成长。
D.合理的待遇及主管的管理风格。
问题3:为什么我们应该录取你?( )
A.因为我深信我比别人都优秀,
B.因为我有很强烈的企图心,想要与贵公司共同成长。
C.您可以由我过去的工作表现所呈现的客观数据,明显地看出我全力以赴的工作态度。
D.我在这个产业已耕耘了8年,丰富的人脉是我最大的资产。
问题4:请谈谈你个人的最大特色。( )
A.我人缘极佳,连续3年担任福委会委员。
B.我的坚持度很高,事情没有做到一个令人满意的结果,绝不罢手。
C.我非常守时,工作以来,我从没有迟到过。
D.我的.个性很随和,是大家公认的好好先生(小姐)。
问题5:萨特宣称,对人类来说,“存在先于本质”,换言之( )。
A.当人们理智的时候,他们才符合人类的本质。
B.上帝的指示,人们在本质上是注定要存在的。
C.人类可以自由选择,甚至选择不以任何方式做任何事。
D.人类是自由的,可以通过自己的行为而成为自己所愿意成为的任何角色。
汽车公司笔试题目(简答题)
简答题
1、对你来说工作中最重要的是什么?
2、假如你被录用了,你将如何开展工作?
3、你认为公司为什么要聘用你?
4、你认为你的.哪些经历会有助于你即将担任的这份工作?
5、在你看来,我们会为你的职业生涯规划一个怎样的环境?
6、你的长处是什么?
7、什么是你最大的弱点?
8、你如何评价你的前任老板?
9、你的业余时间喜欢做什么?
10、5年后你会是什么样?
11、薪水的期望是多少?
Delphi程序员笔试题目(选择题)
1. 用户开发程序时需要经常在窗体和编辑器窗口之间来回切换,可使用快捷键,
A、F12和F11
B、F12和F13
C、F12和Ctrl+F12
D、F12和Alt+F12
E、F12和Shift+F12
2. 某函数如下:
Function check(n,k:Integer):Integer;
Var m:Integer;
Begin
Repeat
m:=n mod 10;
n:=n div 10;
K:=k-1
Until k=0;
Check:=m
End;
若调用语句y:=check(3725,3),运行后y值为:()
A、7
B、5
C、2
D、0
3. 以下那个组件不可以由用户输入编辑文本()
A、TEdit
B、TcomboBox
C、TMaskEdit
D、Tlabel
E、TStringGrid
4. 一个对象类可以继承和直接使用它的父类的所有成员,除了:()
A、public域
B、private域
C、protected域和private域
D、protected域和方法
E、private域和方法
5. Delph没有用到的文件类型有()。
A、.frm
B、.pas
C、.dfm
D、.dpr
E、.res
6. Query组件没有Table组件那样的( )属性。
A、DataSource
B、TableName
C、Filtered
D、Database
E、UpdateObject
7. 下面关于属性的论述正确的是()。
A、属性能实现write方法
B、属性能实现read方法
C、属性可以只读或只写
D、属性可以公开或非公开
E、属性不能直接存取
8. 调试程序时,需要执行执行点所在的源代码行,并停留在下一个源代码行。可通过()菜单项进行。
A、Run
B、Step Over
C、Trace Into
D、Trace To Next Source Line
E、Run to Cursor
9. 设a是布尔变量,其它是整型变量,下面正确的赋值语句是( )
A、x=y div 7
B、x:=y:=z+1
C、a:=x=y mod z
D、x+y:=z
E、x+y=a
10. 表达式round(4.2) mod trunc(2.8)的值是( )
A、0
B、1
C、2
D、3
E、4
11. 下列常量定义合法的是( )
A、CONST width=7;
B、CONST case=\'7\';
C、CONST 1A=7.9;
D、CONST century=year div 100;
E、CONST 57;
12. 以下运算符中运算优先级最高的是( )
A、+
B、OR
C、>=
D、DIV
E、-
13. 已知a、b、c、d是同类型的简单变量,而且已有互不相同的值,执行下列语句:
b:=a; a:=c; d:=a; d:=b; 后,其值相等的变量是()
A、a,c
B、a,d
C、c,b
D、b,a
E、无法确定
14. 已知有说明Var x:real;下列程序段中的错误为:( )
case x<=2.0 of
0:x:=0;
1:x:=1
end
A、case表达式中有常数
B、case常量和case表达式类型不一样
C、赋值语句两边类型不一致
D、case表达式为关系表达式
E、case语法不规范
15. 以下语句的循环执行次数是( )
x:=37; y:=3
while y<=x do y:=y+y
A、3
B、4
C、5
D、6
E、0
16. 程序 For I:=1 to 5 do
for j:=2 to I do
writeln(\'*\');
输出的\'*\'个数为( )
A、5
B、10
C、15
D、25
E、30
17. 下列函数头合法的是( )
A、function total(x:real);
B、procedure ab(a,b:real):real;
C、procedure sum;
D、function f(var f:real):integer;
E、procedure FontListBoxKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState;);
18. 已知函数如下:
function f(n:integer):integer;
begin
if n=0 then f:=0
else if n>0 then f:=f(n-2)
else f:=f(n+3)
end;
则调用f(5)的值是( )
A、0
B、1
C、-1
D、-2
E、2
19. 下列类型中合法的是( )
A、TYPE a=10..10;
B、TYPE b=10..5;
C、TYPE c=0..SQRT(10);
D、TYPE d=10.0..20.0;
E、TYPE e=random(9)..1
20. 已知 Var a:array[\'a\'..\'e\',1..4,boolean] of real;
则数组a中包含的元素的个数为()
A、5
B、20
C、40
D、11
E、22
21. 已知 Var a:array[1..10] of integer;
k,I:integer;
程序段:
k:=1;
for I:=1 to 10 do
if a[i]>a[k] then
k:=I;
writeln(a[k]);
执行后输出的是( )
A、数组中的平均值
B、数组中的最大值
C、数组中的最小值
D、数组中的总和
E、无法确定
22. 已知Var f:file of integer;则f所代表的文件是( )
A、ASCII码文件
B、二进制文件
C、文本文件
D、存放整数的文本文件
E、HTML文件
23. 在VCL中( )是TDBListBox的父类
A、TCustomListBox
B、TListBox
C、TDBDataset
D、TDatabase
E、TDBEdit
24. 为让控件显示弹出式提示框文字,需用到控件的()属性
A、Handle
B、Hint
C、ShowHint
D、Showing
E、Visible
25. 发生在鼠标左键单击控件时的事件是()
A、OnMouseDown
B、OnMouseUp
C、OnClick
D、OnDbClick
E、OnEnter
26. 下列值中不是FormStyle属性的.可能值的是( )
A、fsNormal
B、fsMIDChild
C、fsMIDForm
D、fsStayOnTop
E、fsDeskTop
27. 使用Delphi多线程的优点是( )
A、程序运行速度加快
B、不需要考虑同步访问共享资源与内存
C、程序编写更简单
D、可以在后台运行线程
E、不会是Windows出错
28. 有多种方法可以在OLE文档接收器中放置对象,但不包括( )
A、使用特定的菜单命令嵌入对象
B、从剪贴板粘贴对象,来建立新嵌入对象
C、从剪贴板粘贴-链接对象,来建立新嵌入对象
D、由服务器生成的文件中建立新对象,
E、通过ODBC接口,传递对象29. 用于异常处理的关键字不包括( )
A、try
B、except
C、finally
D、raise
E、error
30. 以下说法不正确的是( )
A、VCL组件是Delphi最有效和最有用的组件
B、COM是OLE和ActiveX的基础
C、COM对象可用于任何Windows编程环境
D、VCL组件是COM对象
E、典型的COM对象包含在扩展名为.DLL或.OCX的文件中
31. Delphi中取值范围0到255的数据类型是()
A、ShortInt (-128~127)
B、Byte 0~255
C、SmallInt -32768~32767
D、Real
E、Word
32. 以下关于事件的说法不正确的是( )
A、不一定要响应某个组件所定义的所有事件
B、多个组件可以共享同一个事件处理程序
C、根据需要可以响应任何组件的事件
D、单击Object Inspector中的事件处理程序名,Code Editor将自动进入该事件的代码段。
E、事件的Sender参数是用来决定哪个组件产生了此事件
笔试(选择题)
选择题(10个单选)
1. 路由的相关概念,(下一跳,目标地址,源地址,路由权值哪个不包含)
2. 一颗21个节点10层的2叉树,第7层最多有多少个结点,
3. x = 793, i = 100 while(!x){ x &= (x - 1); i ^=10; } 则i = ?
4. 概率题,10个文件,每个文件传对的`概率是90%,3次失败就失败。若成功,则应该传了多少次。
5. 概率题,7个相同的球放到4个不同的盒子里的方法有多少种?
6. 虚拟内存的作用,(扩大内存存储速度?扩大内存存储容量?扩大外存存储速度?扩大外存存储容量)
10. 机器指令和微指令的关系,
。。。 答题(3道)
1. x = (54321),翻转后的值y=(12345),类似x=(-123),翻转后y=(-321), (1)写算法实现 (2)写测试用例
2. 老题目,就是类似于按顺序打印一个字符串的所有可能秩序
3. 一个数轴,给定那条线段,(s,t),s是起点坐标,t是终点坐标,写算法算出总的长度。(用动态规划)整理一下思路再发。
1、有一个名人和很多平民在一块,平民都认识这个名人,但是这个名人不认识任何一个平民,任意两个平民之间是否认识是未知的,请设计一个算法,快速找个这个人中的那个名人。 已知已经实现了一个函数 bool know(int a,int b) 这个函数返回true的时候,表明a认识b,返回false的时候表明a不认识b。
思路:首先将n个人分为n/2组,每一组有2个人,然后每个组的两个人调用这个know函数,假设为know(a,b),返回true的时候说明a认识b,则a肯定不是名人,a可以排除掉了,依次类推,每个组都调用这个函数依次,那么n个人中就有n/2个人被排除掉了,数据规模将为n/2。同理在剩下的n/2个人中在使用这个方法,那么规模就会将为n/4,这样所有的遍历次数为n/2+n/4+n/8+........ 这个一个等比数列,时间复杂度为o(n)。
2、进程切换需要注意哪些问题?
保存处理器PC寄存器的值到被中止进程的私有堆栈; 保存处理器PSW寄存器的值到被中止进程的私有堆栈; 保存处理器SP寄存器的值到被中止进程的进程控制块;
保存处理器其他寄存器的值到被中止进程的私有堆栈; 自待运行进程的进程控制块取SP值并存入处理器的寄存器SP; 自待运行进程的私有堆栈恢复处理器各寄存器的值;
自待运行进程的私有堆栈中弹出PSW值并送入处理器的PSW; 自待运行进程的私有堆栈中弹出PC值并送入处理器的PC。
3、输入一个升序数组,然后在数组中快速寻找两个数字,其和等于一个给定的值。
这个编程之美上面有这个题目的,很简单的,用两个指针一个指向数组前面,一个指向数组的后面,遍历一遍就可以了。
4、判断一个自然数是否是某个数的平方。当然不能使用开方运算。
方法1:
遍历从1到N的数字,求取平方并和N进行比较。
如果平方小于N,则继续遍历;如果等于N,则成功退出;如果大于N,则失败退出。
复杂度为O(n^0.5)。
方法2:
使用二分查找法,对1到N之间的数字进行判断。
复杂度为O(log n)。
方法3:
由于
(n+1)^2
=n^2 + 2n + 1,
= ...
= 1 + (2*1 + 1) + (2*2 + 1) + ... + (2*n + 1)
注意到这些项构成了等差数列(每项之间相差2)。
所以我们可以比较 N-1, N - 1 - 3, N - 1 - 3 - 5 ... 和0的关系。
如果大于0,则继续减;如果等于0,则成功退出;如果小于 0,则失败退出。
复杂度为O(n^0.5)。不过方法3中利用加减法替换掉了方法1中的乘法,所以速度会更快些。
例如:3^2 = 9 = 1 + 2*1+1 + 2*2+1 = 1 + 3 + 5
4^2 = 16 = 1 + 2*1 + 1 + 2*2+1 + 2*3+1
int square(int n)
{
int i = 1;
n = n - i;
while( n >0 )
{
i += 2;
n -= i;
}
if( n == 0 ) //是某个数的平方
return 1;
else //不是某个数的平方
return 0;
}
一、算法设计
1、设rand(s,t)返回[s,t]之间的随机小数,利用该函数在一个半径为R的圆内找随机n个点,并给出时间复杂度分析。
思路:这个使用数学中的极坐标来解决,先调用[s1,t1]随机产生一个数r,归一化后乘以半径,得到R*(r-s1)/(t1-s1),然后在调用[s2,t2]随机产生一个数a,归一化后得到角度:360*(a-s2)/(t2-s2)
2、为分析用户行为,系统常需存储用户的一些query,但因query非常多,故系统不能全存,设系统每天只存m个query,现设计一个算法,对用户请求的query进行随机选择m个,请给一个方案,使得每个query被抽中的概率相等,并分析之,注意:不到最后一刻,并不知用户的总请求量。
思路:如果用户查询的数量小于m,那么直接就存起来。如果用户查询的数量大于m,假设为m+i,那么在1-----m+i之间随机产生一个数,如果选择的是前面m条查询进行存取,那么概率为m/(m+i),如果选择的是后面i条记录中的查询,那么用这个记录来替换前面m条查询记录的概率为m/(m+i)*(1-1/m)=(m-1)/(m+i),当查询记录量很大的时候,m/(m+i)== (m-1)/(m+i),所以每个query被抽中的概率是相等的。
3、C++ STL中vector的相关问题:
(1)、调用push_back时,其内部的内存分配是如何进行的?
(2)、调用clear时,内部是如何具体实现的?若想将其内存释放,该如何操作?
vector的工作原理是系统预先分配一块CAPACITY大小的空间,当插入的数据超过这个空间的时候,这块空间会让某种方式扩展,但是你删除数据的时候,它却不会缩小。
vector为了防止大量分配连续内存的开销,保持一块默认的尺寸的内存,clear只是清数据了,未清内存,因为vector的capacity容量未变化,系统维护一个的默认值。
有什么方法可以释放掉vector中占用的全部内存呢?
标准的解决方法如下
template < class T >
void ClearVector( vector< T >& vt )
{
vector< T >vtTemp;
veTemp.swap( vt );
}
事实上,vector根本就不管内存,它只是负责向内存管理框架acquire/release内存,内存管理框架如果发现内存不够了,就malloc,但是当vector释放资源的时候(比如destruct), stl根本就不调用free以减少内存,因为内存分配在stl的底层:stl假定如果你需要更多的资源就代表你以后也可能需要这么多资源(你的list, hashmap也是用这些内存),所以就没必要不停地malloc/free。如果是这个逻辑的话这可能是个trade-off
一般的STL内存管理器allocator都是用内存池来管理内存的,所以某个容器申请内存或释放内存都只是影响到内存池的剩余内存量,而不是真的把内存归还给系统。这样做一是为了避免内存碎片,二是提高了内存申请和释放的效率――不用每次都在系统内存里寻找一番。
二、系统设计
正常用户端每分钟最多发一个请求至服务端,服务端需做一个异常客户端行为的过滤系统,设服务器在某一刻收到客户端A的一个请求,则1分钟内的客户端任何其它请求都需要被过滤,现知每一客户端都有一个IPv6地址可作为其ID,客户端个数太多,以至于无法全部放到单台服务器的内存hash表中,现需简单设计一个系统,使用支持高效的过滤,可使用多台机器,但要求使用的机器越少越好,请将关键的设计和思想用图表和代码表现出来。
三、求一个全排列函数:
如p([1,2,3])输出:
[123]、[132]、[213]、[231]、[321]、[323]
求一个组合函数
如p([1,2,3])输出:
[1]、[2]、[3]、[1,2]、[2,3]、[1,3]、[1,2,3]
这两问可以用伪代码。
1、对于如下程序:
#include
using namespace std;
class A
{
public:
A
{
cout<<“A”<
}
};
int main(void)
{
A a[4], b,*p;
}
会输出多少个A?( C )
A、2 B、3 C、5 D、6
p只是一个对象指针,并没有指向一个对象的内存空间,所以没有调用构造函数。
2、头文件中的 ifndef/define/endif 有什么作用?
答:防止该头文件被重复引用,避免变量、类型等被重新定义。
3、const 有什么用途?(请至少说明两种)
答:(1)可以定义 const 常量。
(2)const可以修饰函数的参数、返回值,甚至函数的定义体。被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
4、如下的字符串函数,用于生存一个字符串 ”连接号码异常” ,并返回它的指针
char* strfun()
{
char str[20];
strcpy(str, “连接号码异常”);
printf(“%s \n”, str); //printf语句1
return str;
}
void main()
{
char *pstr = strfun();
printf(“%s \n”, pstr); //printf语句2
}
问题1 : printf语句1和printf语句2哪个能在屏幕上正在打印出来?
问题2 : 如果不能正常在屏幕上打印出字符串,请说明原因。
问题3 : 如果不修改strfun的声明,请问该如何修改上述程序的错误。
答:
问题1:语句1可以正常打印,语句2不能正常打印;
问题2:语句2使用的指针所指向的内存空间str[20],在函数strfun返回时已经被释放了;
问题3:可以将函数strfun中的语句char str[20];改为char *str = new char[20];
5、下面是交换两个double型数据的函数,
void swap( double* p1, double* p2 )
{
double *p;
*p = *p1;
*p1 = *p2;
*p2 = *p;
}
void main()
{
double a = 0.1;
double b = 0.2;
swap( &a, &b );
}
请找出上述代码的错误,指出错误的原因,并改正。
答:函数swap中混淆了double型指针与double型变量的差别,对于一个未初始化的指针访问其内存空间是非常危险的。对swap函数修改如下:
void swap( double* p1, double* p2 )
{
double p;
p = *p1;
*p1 = *p2;
*p2 =p;
}
6、在电信业务的后台处理程序中,经常会涉及到处理字符串,除了用char *处理字符串之外,C++还为我们提供了封装了的字符串类string,其本质也是用一个动态数组来保存字符串,类String的原型为:
class String
{
public:
String(const char *str = NULL); // 普通构造函数
String(const String &other); // 拷贝构造函数
~String(void); // 析构函数
String & operate =(const String &other); // 赋值函数
private:
char *m_data; // 用于保存字符串
};
请编写String的上述4个函数普通构造函数、拷贝构造函数、析构函数和赋值函数。
代码如下:
class String
{
private:
char *m_data;
public:
String();
String(const char *str = NULL);
String(const String &other);
~String(void);
String & operator =(const String &other);
};
String::String()
{
m_data = NULL;
}
String::String(const char *str = NULL) //带一个指针的普通构造函数
{
if(str == NULL)
{
m_data = new char[1];
assert(m_data != NULL);
*m_data = '\0';
}
else
{
int length=strlen(str);
m_data = new char[length+1];
assert(m_data != NULL);
strcpy(m_data,str);
}
}
String::String(const String &other) //拷贝构造函数
{
m_data = new char[other.length+1];
assert(m_data != NULL);
strcpy((*this).m_data,other.m_data);
}
String::~String(void) //析构函数
{
if(m_data != NULL)
{
delete m_data;
m_data = NULL;
}
}
String & String::operator=(const String &other) //赋值函数
{
if(&other != this)
{
delete [](*this).m_data;
(*this).m_data = new char[other.length+1];
assert((*this).m_data != NULL);
strcpy((*this).m_data,other.m_data);
}
}
1、对于一个内存地址是32位、内存页是8KB的系统。0X0005F123这个地址的页号与页内偏移分别是多少。
2、如果X大于0并小于65536,用移位法计算X乘以255的值为: (X<<8)-X
X<<8-X是不对的,因为移位运算符的优先级没有减号的优先级高,首先计算8-X为0,X左移0位还是8。
3、一个包含n个节点的四叉树,每个节点都有四个指向孩子节点的指针,这4n个指针中有 3n+1 个空指针。
4、以下两个语句的区别是:第一个动态申请的空间里面的值是随机值,第二个进行了初始化,里面的值为0
int *p1 = new int[10];
int *p2 = new int[10]();
5、计算机在内存中存储数据时使用了大、小端模式,请分别写出A=0X123456在不同情况下的首字节是,大端模式:0X12 小端模式:0X56 X86结构的计算机使用 小端 模式。
一般来说,大部分用户的操作系统(如windows, FreeBsd,Linux)是小端模式的。少部分,如MAC OS,是大端模式 的。
6、在游戏设计中,经常会根据不同的游戏状态调用不同的函数,我们可以通过函数指针来实现这一功能,请声明一个参数为int *,返回值为int的函数指针:
int (*fun)(int *)
7、下面程序运行后的结果为:to test something
char str[] = “glad to test something”;
char *p = str;
p++;
int *p1 = static_cast(p);
p1++;
p = static_cast(p1);
printf(“result is %s\n”,p);
8、在一冒险游戏里,你见到一个宝箱,身上有N把钥匙,其中一把可以打开宝箱,假如没有任何提示,随机尝试,问:
(1)恰好第K次(1=
(2)平均需要尝试多少次。
这个就是求期望值 由于每次打开宝箱的概率都是1/n,则期望值为: 1*(1/n)+2*(1/n)+3*(1/n)+......+n*(1/n) = (n+1)/2
工商银行笔试参考资料之工商银行笔试真题,
1、关于黑洞正确的是……题具体忘了,但印象中我选的似乎是黑洞的引力对周围行星分布的影响。
2、法律规定,如果加班,加班工资是正常工资滴多少倍。
3、“老死不相往来”是谁的主张。
4、对西方文官制度影响深重的中国历史上人才选拔制度。
5、股票发行时会有溢价,发行价由谁决定。
6、资产负债表反映滴是公司的财务状况,财务状况是指……
7、被踢出太阳系行星行列的是哪颗,太阳系现有几颗行星?
8、由那个方向沿着穿过子午变更线会少一天,
11、谁谁谁在哪的讲话,指出今年反腐倡廉的重点是……
12、一道数列题,非常简单,基本上一次差分后是个以4为公差的等差数列。
9、收购中,指并购完成后,并购者无法使整个企业产生经营、财务、市场份额等协同效应,这是虾米风险,营运,选错了
10、我国获得第一枚奥运金牌滴人。
★ 笔试题目
★ 太古笔试题目
★ 出纳笔试题目
★ C笔试题目
★ Dell笔试题目
★ 广本笔试题目
★ 飞利浦笔试题目
★ 工行笔试题目
★ 机械设计笔试题目
★ 网站笔试题目