年前面趋逝科技的一套比试题求解

林初茵 2009-01-04 06:36:32
加精
比试时间是2个小时 前面的智力题和后面的网络题都没记住 只记住了几道而已 大家做做看吧
题目1:(这题我没看懂英文)
There is binary search tree which is used to store characters 'A', 'B',
'C','D','E','F','G','H',which of the following is post-order tree walk
result? (有一个二叉搜索树用来存储字符'A', 'B', 'C','D','E','F','G','H'下
面哪个(些)结果是后序树遍历结果)
A. ADBCEGFH
B. BCAGEHFD
C. BCAEFDHG
D. BDACEFHG
E. All of above

题目2:
At time 0, process A has arrived in the system, in that order; at time
30, both progress B and C have just arrived; at time 90, both progress D
and E have also arrived.The quantum or timeslice is 10 units.
(在0时刻,进程A进入系统,按照这个顺序,在30时刻,进程B和进程C也抵达;在90时刻,进程D和进程E也抵达。一个时间片是10个单元)
Process A requires 50 units of time in the CPU;
Process B requires 40 units of time in the CPU;
Process C requires 30 units of time in the CPU;
Process D requires 20 units of time in the CPU;
Process E requires 10 units of time in the CPU;
进程A需要占用CPU50个单元;
进程B需要占用CPU40个单元;
进程C需要占用CPU30个单元;
进程D需要占用CPU20个单元;
进程E需要占用CPU10个单元;
Which of the process will be the LAST to complete, if scheduling policy
is preemptive SJF (Short Job First).please describe the principle.
(如果按照短作业优先级的方法,哪个进程最后结束。请描述原理)


题目3:Function club is used to simulate guest in a club. With 0 guests
initially and 50 as max occupancy, when guests beyond limitation, they need to wait outside;when some guests leave the waiting list will decrease. The function will print out number of guests in the club and waiting outside. The function declaration as follows:
void club(int x); positive x stands for guests arrived, nagative x stands for guests left from within the club
(club函数用来模拟一个俱乐部的顾客。初始化情况下是0个顾客,俱乐部最大规模只能有50个顾客,当用户超过了最大规模,他们必须等在外面。当一些顾客离开了等待队列将减少。这个club函数将打印在俱乐部里面的顾客人数,和外面的等待人数。函数声明如下:
void club(int x);正数x代表客人来了,负数x代表客人离开了俱乐部)
For example, club (40) prints 40,0; and then club (20) prints 50,10; and
then club (-5) prints 50,5; and then club (-30) prints 25,0; and then
club (-30) prints N/A; since it is impossible input.
(举例而言,club (40)打印40,0;接着club (20)打印50,10;接着club (-5)打印50,5;接着club (-30)打印25,0;接着club (-30)打印N/A;因为这是不可能实现的。)
Please write the void club(int x) with c++;
To make sure this function works as defined, we have following set of
data to pass into the function and check the result are correct.
(请用c++编程实现club函数。为了确保函数工作正常,我们使用下列数据来测试函数是否正常,你认为该选哪个选项)

a 60
b 20 50 -10
c 40 -30
d 60 -5 -10 -10 10
e 10 -20
f 30 10 10 10 -60
g 10 10 10
h 10 -10 10

A a d e g
B c d f g
C a c d h
D b d g h
E c d e f


题目4:The following C++ code tries to count occurence of each ASCII charcater
in given string and finally print out the occurrency numbers:(下面C++代码用来统计每个ASCII字符的出现次数,最后给出出现数值)
void histogram(char* src)
{
int i;
char hist[256];
for (i=0;i<256;i++)
{
hist[i]=0;
}
while(*src!='\0')
{
hist[*src]++;
}
for(i=0;i<=256;i++)
{
printf("%d\n", hist[i]);
}
}
If there may be some issue in the code above, which line(s) would be
(如果上面代码有错,将在哪行出现)
A 1 and 3
B 3 and 7
C 9
D 5 and 7
E 4 and 8


题目5:(说实话这道题我没看懂)
Consider the grammar (如下语法)
S--> aSbS|bSaS|V (S是变量)
where V means a terminator for grammar.(V是一个语法的终止符)
which statement(s) below is(are) corrects?(下列哪种说法是正确的)
1 This grammar is not an ambiguous grammar (这个语法不是一个含糊的语法)
2 Sentence 'abba' can be constructed by only one parse tree(语句abba能被构造成一个分析树)
3 This grammar construct sentence contain any 'a' (1 and more) and any 'b' (1 and more)(这个语法构造句包含一个或多个a和1个或多个b)
4 The grammar equals to regular expression "(a|b)?(a|b)+"(这个语法等于正则表达式(a|b)?(a|b)+)
A 1 B 2 3 C 3 D 1 3 E 2 4

题目6:
struct data
{
unsigned char x;
unsigned short y;
unsigned int z;
}
已知变量var类型为struct data;程序在32位上编,不考虑对齐,请补齐下面汇编语
言,以完成相应C语言功能
var.x=0;
LEA EBX, var
XOR EAX, ______
MOV [EBX], ______
var.y = (unsigned short) (var.z+1)
MOV ECX, ______
INC ECX
MOV ______, ______
var.z = var.y-1;
MOV DX, ______
AND EDX, ______
DEC, EDX
MOV ______, EDX


题目7:下列程序中能编译通过么?如果不能该如何修改使其通过。
是定义#define VOID_P 1 还是 #defineVOID_P 0,mem才能得到正确地址。
#include <iostream>
#define VOID_P 0
#if VOID_P
void allocm(void *pout, unsigned long size)
{
pout = malloc(size);
}
#else
void allocm(void **pout, unsigned long size)
{
*pout = malloc(size);
}
#elseif

int main(int argc, char *argv[]){
void *mem = 0;
#if VOID_P
allocm(mem, 100);
#else
allocm(&mem, 100);
#endif
return 0;

}

题目8:请编C++实现:函数可变长有序数组的插入(无重复数据节点)
int *head = NULL;
int Insert = (int **pHead, int n);

//参数:*pHead 数组首地址 n 插入数值
//返回值: 0成功, 1失败







...全文
5978 163 打赏 收藏 转发到动态 举报
写回复
用AI写文章
163 条回复
切换为时间正序
请发表友善的回复…
发表回复
langya413 2012-09-21
  • 打赏
  • 举报
回复
[Quote=引用 86 楼 的回复:]

好东西
[/Quote]
答案应该是:#define VOID_P 0
实参形参之间的传值问题
void allocm(void *pout, unsigned long size)
{
pout = malloc(size);
}

按照这种传值得话,形参获取了值,而实参没有变

jerryjerryone 2012-08-17
  • 打赏
  • 举报
回复
第三题,我也选E,代码如下:

const int capacity = 40;

void club( int x )
{
static int in = 0;
static int out = 0;

if( x >= 0 )
{
if( x >= ( capacity - in ) )
{
out = out +( x - ( capacity - in ) ) ;
in = capacity;

}
else
{
in = in + x;
}
}
else
{
if( in + x >= 0)
{
in = in + x;//in - ( -x )
}
else
{
cout << "N/A"<< endl;
return;
}

if( out <= ( capacity - in ) )
{
in = in + out;
out = 0;
}
else
{
in = capacity;
out = out - ( -x );
}
}

cout << in << " , "<< out << ";" << endl;
}

zhaoZero41 2012-08-09
  • 打赏
  • 举报
回复
好贴 马克一记
yangyi_33855 2012-02-28
  • 打赏
  • 举报
回复
先顶,今年下半年找工作了,各种面试笔试题收集中!
hello29 2011-10-14
  • 打赏
  • 举报
回复
楼主的记忆力真的很好啊,换做是我的话,我只能把卷子偷偷抄一份了^_^
star143133 2011-10-13
  • 打赏
  • 举报
回复
mark
勇敢的搬砖人 2010-05-26
  • 打赏
  • 举报
回复
jizhongqing 2010-05-08
  • 打赏
  • 举报
回复
题目很全,俺这半路出家的,操作系统 编译原理,测试。。。一概不通。。。
LittleJohny 2010-03-23
  • 打赏
  • 举报
回复
Mark!!!1
areegod 2009-12-17
  • 打赏
  • 举报
回复
考的好广啊,,,,
csallen 2009-10-15
  • 打赏
  • 举报
回复
[Quote=引用 82 楼 lnever 的回复:]
引用 72 楼 queshangxintou 的回复:
查找时忽略了一个条件,是变长有序数组,那查找应该用二分查找法吧

代码里写了
//brute sort, you can optimize the program here

如果要优化代码的话,可以把查找改成二分。
我是用了最原始的brute sort,即排序和查找都是从头到尾挨个比较。
效率不高,有改进空间:)
[/Quote]

free(*pHead)
yhhxq 2009-09-11
  • 打赏
  • 举报
回复
mark
papaofdoudou 2009-09-10
  • 打赏
  • 举报
回复
xian mark 明天看
djj2007 2009-09-04
  • 打赏
  • 举报
回复
[Quote=引用 142 楼 cwcwcwcw2008 的回复:]
第二题没有讲清楚里进程调度方式是否“抢先式”还是“非抢先式”
如是“抢先式”,则为:
A(50) 0-50
C(30) 50-80
B(40) 80-90
E(10) 90-100
D(20) 100-120
B(30) 120-150
如果是“非抢先式”,则为:
A(50) 0-50
C(30) 50-80
B(40) 80-120
E(10) 120-130
D(20) 130-150

[/Quote]


有时间片的,时间片用完就必须让出CPU资源等待,然后系统重新分配CPU
chin_chen 2009-09-02
  • 打赏
  • 举报
回复
mark
wwfeng0601 2009-08-23
  • 打赏
  • 举报
回复
shoucangxia .
beyondjdg 2009-05-28
  • 打赏
  • 举报
回复
题目5:(说实话这道题我没看懂)
Consider the grammar (如下语法)
S--> aSbS|bSaS|V (S是变量)
where V means a terminator for grammar.(V是一个语法的终止符)
which statement(s) below is(are) corrects?(下列哪种说法是正确的)
1 This grammar is not an ambiguous grammar (这个语法不是一个含糊的语法)
/////楼主翻译的不对,这语法不是一个有歧义的语法!
2 Sentence 'abba' can be constructed by only one parse tree(语句abba能被构造成一个分析树)
3 This grammar construct sentence contain any 'a' (1 and more) and any 'b' (1 and more)(这个语法构造句包含一个或多个a和1个或多个b)
4 The grammar equals to regular expression "(a|b)?(a|b)+"(这个语法等于正则表达式(a|b)?(a|b)+)
A 1 B 2 3 C 3 D 1 3 E 2 4



这个语法明显有歧义,S-->aSbS-->abSaSbS-->abab
S-->aSbS-->aSbaSbS-->abab
2.abba只有一棵解析树,是对的
beyondjdg 2009-05-28
  • 打赏
  • 举报
回复
题目五只有1是正确的!
chin_chen 2009-01-14
  • 打赏
  • 举报
回复
#include <iostream>
int main()
{

std::cout<<"mark";
}
cwcwcwcw2008 2009-01-09
  • 打赏
  • 举报
回复
第二题没有讲清楚里进程调度方式是否“抢先式”还是“非抢先式”
如是“抢先式”,则为:
A(50) 0-50
C(30) 50-80
B(40) 80-90
E(10) 90-100
D(20) 100-120
B(30) 120-150
如果是“非抢先式”,则为:
A(50) 0-50
C(30) 50-80
B(40) 80-120
E(10) 120-130
D(20) 130-150
加载更多回复(138)
摘要:汽车电磁兼容性(EMC)是保证整车及其各分系统设备正常工作的关键技术。随着现代汽车工业的发展,包括汽车电子技术的快速发展,汽车EMC问题的发展速度已经大大超过汽车技术发展的平均水平。日益增多的汽车电子产品,如循迹控制系统(TCS),全球卫星定位系统(GPS)等等,使狭小的空间充斥着越来越多的电子产品,因此不可避免地使电磁兼容问题更加复杂。尤其对于新能源汽车来说,驱动电动机、大功率器件等电气电子设备的增多、各种类型的电气电子设备集中布置以及整车的各种设备通过电气设备连接在一起,电磁波频率变化范围从数千赫兹到兆赫兹,构成了极其复杂的电磁环境,因此电磁兼容问题成为了汽车研究中的关键问题之一,是系统工程的重要组成部分。目前,产品的电磁兼容标准评估几乎都是通过暗室实测来完成的。而采用软件仿真设计日常电子产品时,在设计之初就考虑电磁兼容的问题是十分必要的;而仿真预估又是发现关键问题、及时快速解决问题、减少设计成本、从而缩短开发周期的经济和有效的方法。预估对高频率现象更是不可或缺。基于上述情形,论文结合吉林省科技厅项目开展了汽车电磁兼容的仿真技术研究。对于汽车这样的复杂大系统,很难准确建立某种数学模型,而且建模过程中,只有采用有效的模型才能准确反映电磁兼容,因此采用系统学方法和优先考虑等效原则就显得尤为必要。大多数传统的分析方法直接采用系统的物理电路来划分,这样划分出来的结果往往很复杂。协同学理论告诉我们,各子系统具有多种多样的属性,就整体环境而言,子系统间既协作配合又相互制约,是一种对立统一的关系;由各子系统组成的大系统或整体系统对外则表现为遵循共同规律,包括一定条件下的转变、演变和相互作用。在子系统中找出影响系统变化的控制因素并进行后期分析,从整体入手研究复杂系统的演化行为特点,根据理论推出简单有效的数学模型,把研究成果推广,基于协同学的思想去拓宽适用范围,从而为开辟理论适用的新领域提供现实、快捷、方便之路。协同学认为,慢驰豫参量决定了系统的整体性质及其发展。根据已知实测数据进行电路分析,基于计算电磁学,对增程式汽车电磁系统建立模型,并确立合理的研究模型对子系统进行研究;依据协同学原理选取电磁兼容性能指标(如敏感度等)来看作序参量,分析各子系统情况,以及整个系统相互关系,并且因此推出序参量方程来对汽车电磁兼容进行系统研究,最终掌握汽车电磁兼容研究的系统级技术,得到了研究汽车的电磁兼容问题的理论基础。增程式电动汽车在纯电动汽车的基础上使用了增程器,这使汽车的再续驶里程得到了进一步的增加。附加装置主要包括有发电机、内燃机(ICE)和油箱。很显然,电磁兼容环境更加复杂,既涉及永磁同步电机启动的电磁兼容问题,又必须考虑在续驶里程不足时的点火开关的电磁兼容问题。论文对增程式电动汽车的驱动电动机和增程器发动机点火开关的电磁兼容性进行了基于慢驰豫变量方法的研究及仿真计算,找出影响电动机电磁干扰的慢驰豫变量,并对瞬态变化进行了分析,如电动机启动瞬间情况,建立相应的电机电磁场数学模型,该模型中包含电磁兼容中的三要素,即敏感设备、干扰源、传输路径。对于同一敏感设备,对比电磁干扰值与敏感度阈值大小判断是否电磁兼容。根据前面介绍的协同学理论,可以很容易的选取序参量,不容置疑地要选取磁场能量密度wm。对增程器发动机点火系统进行深入研究,结果表明初级回路的电流是影响发动机对外干扰的重要因素,将其做为慢驰豫变量进行研究,同时建立了发动机次级回路的等效模型;其次,通过对点火火花电流的仿真,从中得到抑制其对外电磁干扰的若干方法;对增程式电动汽车DC/AC逆变器及传输线束进行电磁兼容研究,运用协同学理论及相关计算方法,对影响电源系统和传输线束电磁兼容性的相关重要参数进行了研究及仿真计算。从介绍逆变器的结构和工作原理入手,分析DC/AC逆变器电磁辐射源,并建立了各辐射源的模型,得出仿真图像,进一步分析它们的辐射情况。对传输线束串扰理论进行了阐述,并建立了三导体传输线(适用多导体)串扰模型。基于协同学理论,针对无损耗多导体传输线建立了串扰计算模型,分析了负载阻抗与导线特征阻抗之间的关系;对均匀及非均匀介质传输线两种情况,根据推导的多导体传输线串扰公式求解出导线近端及远端的串扰值。与EMC studio的仿真结果进行对比,验证了模型的可靠性;利用系统论的思想观点,将研究对象作为一个整体进行电磁兼容预测及计算,开发出一套有效的电动汽车增程式动力系统电磁兼容性预测软件,同时给出了相关电磁干扰抑制措施,与实测数据相对比后,研究结果说明通过仿真预测能够解决汽车系统的电磁兼容问题;协同学理论可以应用到汽车电磁兼容范畴,研究具有实际意义。

64,701

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧