你也能拿高薪-第2章
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
16.谈谈Windows DNA结构的特点和优点。
微创笔试题目
1.上海的苏州河由于遭受多年的工业污染,一直是条臭水沟。上海市政府下了很大决心清理苏州河,你觉得需要几年能让河水变清?你的依据是什么?
2.找出字符串A中包含的字符可以进行的所有不同组合。例如:abccd中,ab,ac,bc,cc,abd等都是可能的组合。(请用C/C++编程,不允许上机操作)
3.请估算月球的体积。
4.经常去的技术网站,请举例。
5.对软件开发过程的理解。
6.上海有多少外籍和港澳台人士?你的依据是什么?(不得引用政府和调研机构数据)
7.字符串A是由n个小写英文字母(a ~ z)构成的,定义为char A'n'。你能用更少的空间表示这个字符串吗?请写出从char A'n'到你的新的储存格式的转换函数。(请用C/C++编程,不允许上机操作)
8.哈希表和数组的定义,区别,优缺点。
9.用递归实现菲波列数列。
10.用dhtml写页面。
第1章 名企笔试真题精选3。软件业巨无霸(4)
微软研究院笔试题目
1.#include
#include
class CBuffer
{
char * m_pBuffer;
int m_size;
publc:
CBuffer()
{
m_pBuffer=NULL;
}
~CBuffer()
{
Free();
}
void Allocte(int size)
{
m_size=size;
m_pBuffer= new char'size';
}
private:
void Free()
{
if(m_pBuffer!=NULL)
{
delete m_pBuffer;
m_pBuffer=NULL;
}
}
public:
void SaveString(const char* pText) const
{
strcpy(m_pBuffer; pText);
char* GetBuffer() const
{
return m_pBuffer;
}
};
void main (int argc; char* argv'')
{
cBuffer buffer1;
buffer1。SaveString(“Microsoft”);
printf(buffer1。GetBuffer());
}
}
找出Allocate; SaveString; main的错误。
第1章 名企笔试真题精选3。软件业巨无霸(5)
2.打印“Wele MSR Asia”
#include
#include
char * GetName (void)
{
//To return “MSR Asia” String
char name''=“MSR Asia”;
return name;
}
void main(int argc; char* argv'')
{
char name'32';
//Fill in zeros into name
for(int i=0;i {
name'1'='0';
}
//copy “Wele” to name
name=“Wele”;
//Append a blank char
name'8'=”;
//Append string to name
strcat(name;GetName());
//print out
printf(name);
}
找出程序中的错误。
3.#include
class A
{
public:
void FuncA()
{
printf(“FuncA calledn”);
}
virtual void FuncB()
{
printf(“FuncB calledn”);
}
};
class B: public A
{
public:
void FuncA()
{
A::FuncA();
printf(“FuncAB calledn”);
}
virtual void FuncB()
{
printf(“FuncBB calledn”);
}
};
void main(void)
{
B b;
A *pa;
pa=&b;
A *pa2=new A;
b。FuncA();
b。FuncB();
pa…》FuncA();
pa…》FuncB();
pa2…》FuncA();
pa2…》FuncB();
delete pa2;
}
What is the output of the above program?
第1章 名企笔试真题精选3。软件业巨无霸(6)
4.#include
#include
int FindSubString(char* pch)
{
int count=0;
char* p1=pch;
while(*p1!=‘0’)
{
if(*p1p1'1'…1)
{
p1++;
count++;
}
else
{
break;
}
}
int count2=count;
while(*p1!=‘0’)
{
if(*p1!p1'1'+1)
{
p1++;
count2;
}
else
{
break;
}
if(count20)
return count;
return 0;
}
void ModifyString(char* pText)
{
char* p1=pText;
char* p2=p1;
while(*p1!=‘0’)
{
int count=FindSubString(p1);
if(count》0)
{
*p2++=*p1;
sprintf(p2; “%I”; count);
while(*p2!= ‘0’)
{
p2++;
}
p1+=count+count+1;
}
else
{
*p2++=*p1++;
}
}
}
void main(void)
{
char text'32'=“XYBCDCBABABA”;
ModifyString(text);
printf(text);
}
In the main() function; after ModifyString(text) is called; what’s the value of ‘text’?
第1章 名企笔试真题精选4。 硬件巨头—Intel笔试面试题目(1)
智力题1.每天中午从法国塞纳河畔的勒阿佛有一艘轮船驶往美国纽约,在同一时刻纽约也有一艘轮船驶往勒阿佛。已知横渡一次的时间是7天7夜,轮船匀速航行,在同一航线,轮船近距离可见。请问今天中午从勒阿佛开出的船会遇到几艘从纽约来的船?2.巴拿赫病故于1945年8月31日。他的出生年份恰好是他在世时某年年龄的平方,问:他是哪年出生的?答案:
设他在世时某年年龄为x,则x的平方<;1945,且x为自然数。其出生年份x的平方…x=x(x…1),他在世年龄1945…x(x…1)。1945的平方根=44。1,则x应为44或略小于此的数。而x=44时,x(x…1)=44×43=1892,算得其在世年龄为1945…1892=53;又x=43时,x(x…1)=43×42=1806,得其在世年龄为1945…1806=139;若x再取小,其在世年龄越大,显然不妥。故x=44,即他出生于1892年,终年53岁。3.
上图中各边相等,要求:用最少的分割,拼成一个正方形。笔试题目1.设计一个重采样系统,说明如何anti…alias。2.y1(n)=x(2n),y2(n)=x(n/2),问:如果y1为周期函数,那么x是否为周期函数?如果x为周期函数,那么y1是否为周期函数?如果y2为周期函数,那么x是否为周期函数?如果x为周期函数,那么y2是否为周期函数?3.如果模拟信号的带宽为5kHz,要用8k的采样率,怎么办。4.某个程序在一个嵌入式系统(200M的CPU,50M的SDRAM)中已经最优化了,换到另一个系统(300M的CPU,50M的SDRAM)中运行,还需要优化吗?5.x^4+a*x^3+x^2+c*x+d最少需要做几次乘法。6.三个float:a;b;c问值:(a+b)+c(b+a)+c(a+b)+c(a+c)+b7.把一个链表反向填空。8.下面哪种排序法对12354最快?
。A。 quick sortB。 buble sortC。 merge sort9.哪种结构平均来讲获取一个值最快?
。A。 binary treeB。 hash tableC。 stack10.#include
“stdafx。h”#include <;iostream。h>;struct bit{ int a:3;
int b:2; int c:3;};int main(int argc; char* argv''){
bit s; char *c = (char*)&;s; *c = 0x99; cout <;<;
s。a <;<;endl <;<;s。b<;<;endl<;<;s。c<;<;endl; return
0;}Output:?11.挑bug,在linux下运行:#include <;stdio。h>;char
*reverse(char* str){ int len=0; i=0; char *pstr=str; *ptemp;*pd;
while(*++pstr) len++; pstr; //ptemp=(char*)malloc(len+1);
ptemp=(char*)malloc(len+1); pd=ptemp; while(len){ *ptemp=*pstr;
ptemp++; pstr; i++; } *ptemp=*pstr; ptemp++;
*ptemp=‘0’; return pd;}main(){ char string'40'=
“Hello World!”; char *pstr=string; printf(“%s”; pstr); printf(“%s”;
reverse(pstr));}实验室笔试题1.写出下列信号的奈亏斯特频率(1)f(t)=1+cos(2000pait)+sin(4000pait)(2)f(t)=sin(4000pait)/pait(3)f(t)=(sin(4000pait)的平方)/pait2.有两个线程void
producer(){ while(1) { GeneratePacket(); PutPacketIntoBuffer();
Signal(customer); }}void customer(){ while(1)
{ WaitForSignal(); if(PacketInBuffer>;10) { ReadAllPackets();
ProcessPackets(); } }}(1)有没有其他方法可以提高程序的性能(2)可不可以不使用信号之类的机制来实现上述的功能3.优化下面的程序(0)sum=0(1)I=1(2)T1=4*I(3)T2=address(A)…4(4)T3=T2'T1'(5)T4=address(B)…4(6)T5=4*I(7)T6=T4'T5'(8)T7=T3*T5(9)sum=sum+T6(10)I=I+1(11)IF
I<;20 GOTO (2)
第1章 名企笔试真题精选4。 硬件巨头—Intel笔试面试题目(2)
面试题目
1.下面这段代码不符合Pipeline要求,请你改动一下
if(a》b)
i=0;
else
i=1;
2.对于运行在ring3上的这个指令,请你指出CPU和操作系统分别参与了哪部分操作?
mov eax; '0x12345678'
3.如果有一个芯片,只是裸机,如何写它的操作系统?最难的部分在哪儿?如何解决?
4.如何写一个主板的BIOS?
5.没有操作系统来给你完成它的一些初始化工作,如何写出PCI的driver?
Intel 2004北京笔试题
问答题
1.你觉得C程序中为什么会有main(),有没有想过exit,return,或什么都不做也可以让程序正常终止?
2.TOTAL个人围一圈,从1开始数到N,谁数到N出圈,下一个人继续从1开始数,返回最后一个出局的人。
#define TOTAL 15;
int xxxx(int N)
{
int ring'TOTAL' = {1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1; 1} //全是1
int nextstart = 0; counter=0;
for (i =1; i count