第一篇:2008baidu武大笔试软件工程师题目
第一题是给两个串a和b,判断a中的字符是否在b中出现,a和b中都有可能出现汉字,汉字按gbk编码,占两个字节,第一个字节的最高位为
1第二题是有s={a,b,c,d...z,aa,ab...az,...zz,aaa,aab...} 给定一个串seq=[a...z]+,判断seq是s的第几个字符串
第三题是有一个搜索引擎,用户可以对搜索结果进行评分,设计一个评分判定系统,防止恶意评分
一、编程题(30分)
判断字符串b的所有字符是否都在字符串a中出现过,a, b都是可能包括汉字的字符串,b中重复出现的汉字,那么a中也要至少重复相同的次数。
汉字使用gbk编码(简单的说,用两个字节表示一个汉字,高字节最高位为1的代表汉字,低字节最高位可以不为1)。
int is_include(char *a, char *b);
返回0表示没有都出现过,返回1表示都出现过。请给出所给算法的复杂度分析,尤其是字符串长度不同的情况下的复杂度分析。
二、算法题(35分)
序列Seq=[a,b,…z,aa,ab…az,ba,bb,…bz,…,za,zb,…zz,aaa,…] 类似与excel的排列,任意给出一个字符串s=[a-z]+(由a-z字符组成的任意长度字符串),请问s是序列Seq的第几个。
三、系统设计题(35分)
需求:需要引入用户对搜索结果相关性的评分100分制,希望用户的打分能帮助搜索引擎排序,但又要避免恶意投票,作弊等,请设计一个比较公平的评分系统。
第一题 26进制转10进制 第二题字符建一个26大小的表,汉字建一个256*256大小的表 两个都是使用字符值作为下表偏移 第三题开放题 随便搞
第二篇:软件工程师笔试题目
姓名:
一、问答题
1、头文件中的 ifndef/define/endif 干什么用?
2、#include
3、在C语言中,修改符volatile的含义是什么?举例说明其使用场合。
4、在C语言中,static函数与普通函数有什么区别?
5、什么是中断?如果要防止中断嵌套,可以采用什么方法?
6、静态局部变量和普通局部变量有什么区别?
7、堆和栈的区别是?
二、编程题
请实现内存复制函数 void memcpy(void *dst,const void * src,int size);
三、阅读题
1、C++可以采用动态内存分配在运行时为指针分配内存。下面()对一个100个元素的动态数组进行动态内存分配和释放;()对一个单独的int指针分配和释放内存。
Aint *pi = new int;delete pi;pi = 0Bint *pi = new int;delete [] pi;pi =0
Cint *pi = new int(100);delete()pi;pi = 0Dint *pi = new int[100];delete[] pi;pi=02、指出下列程序中的错误并且修改
void GetMemory(char *p)
{
p=(char *)malloc(100);
}
void Test(void)
{
char *str=NULL;
GetMemory=(str);
strcpy(str,“hello world”);
printf(str);
}
第三篇:软件工程师笔试
一。填空
1在UNIX中用(cp)把A目录下的F文件考贝到B目录下
2在UNIX中用(find)找到但前目录中的MOBILE文件
3在UNIX中-rxw。。其中的x是什么意思 执行
4软件工程包括几个部分,每个叫什么
需求分析,系统设计,编程实现,测试,维护
5白盒测试又叫做(结构化测试,基于代码的测试)
二。选择
一些对软件测试看法的选择
三。编程
1。关于SQL的告诉你一些学生的成绩,所学科目,学号等等
要求a。编写程序将科目编号为×××的成绩增加××分
update student
set score = score + x
b。列出所有学生的班号,学号,所学科目等
selcet classno studyno course
from student
c。列出成绩高于80分的学生班号,学号等
select studyno classno
from student
where score > 80
2。关于C++中的引用
引用增加40,要求写出输出结果
引用所指向的变量增加60,要求写输出结果
四问答
1。如果你是测试人员你对客户需求的理解与开发人员不同,发生争执,主管来调解,要求你写一份书面报告给主管看
2。用英语写出来你适合这个职位的character
responsibility smart action focus fast study smart
3。有三条边,在不同的情况下分别组成等边三角形,等腰三角形,普通三角形,不组成三角形要求写出测试用例
4。写出你对软件测试的看法和理解,你是怎么以软件测试作为自己将来职业规划的1.首先是五道判断题,具体忘记了,我只对了三道。
记得的考点有1)JAVA变量名字的合法性,好像是$number是不是合法的2)在linux下查看隐藏文件的命令,ls –a
2.然后是十几道单选题,考点有数据库的范式,白盒测试,瀑布模型有什么缺点,面向对象的基本知识,软件工程的基本知识,LINUX的基本命令(都是很基本的知识)
3.动物都有咬的动作,其中猫和狗咬人的动作又有各自的特点,用面向对象的多态性来描述cat 和 dog 的 bit(JAVA 或 C++)
4.给出一段代码,请指出错误。具体代码忘记了,是考数组、数组指针的不同,还有传参的方法(做错了)
5.写出以下代码的输出
#define AREA(a,b)a+b
#include
void main()
{
cout<
}
6.写出以下代码的输出(代码忘记了,但是在C++的课本上有类似的题,考指针、引用的,如下)
#include
void main()
{
int a = 100;
int *b;
b= &a;
cout<<*b< a += 20; cout< cout<<*b< *b += 20; cout< cout<<*b< } 7.一道简单的计算题,移动的话费周一到周五9:00-23:00 1元/分钟,周一到周五 23:00 – 9:00 0.5元一分钟,周六周日全天0.8元/分钟,节日全天0.7元/分钟,小明9月30日晚上23:59:05 至第二天的 00:01:15,请问话费是多少?(不足一分钟按一分钟算,如有重合,按最低的优惠算) 8.智力题。一根材质不均的绳子,从头烧到尾要一个小时,给你若干跟一模一样的绳子,用烧绳子的方法计时一个小时十五分钟。找出使用绳子最少的方法。 9.写一篇英文文章,200+,描述大学生活中印象最深刻的一件事 10.职业生涯规划的目标是什么?如何实现?在今后3-5年的目标是什么? 第一题:翻译,不说了(注意词汇:电阻 resistors,阻抗:resistance 反馈feedback,电容capacitance,等吧) 第二题:填空,主要是模电的,功放管根据什么分类的?按功放中功放管的导电方式不同,可以分为甲类功放(又称A类)、乙类功放(又称B类)、甲乙类功放(又称AB类)和丁类功放(又称D类)。 1、甲类功放是指在信号的整个周期内(正弦波的正负两个半周),放大器的任何功率输出元件都不会出现电流截止(即停止输出)的一类放大器。甲类放大器工作时会产生高热,效率很低,但固有的优点是不存在交越失真。单端放大器都是甲类工作方式,推挽放大器可以是甲类,也可以是乙类或甲乙类。效率低,约为50%,功率损耗大。 2、乙类功放是指正弦信号的正负两个半周分别由推挽输出级的两“臂”轮流放大输出的一类放大器,每一“臂”的导电时间为信号的半个周期。乙类放大器的优点是效率高,缺点是会产生交越失真。B类功放的效率平均约为75%; 3、甲乙类功放界于甲类和乙类之间,推挽放大的每一个“臂”导通时间大于信号的半个周期而小于一个周期。甲乙类放大有效解决了乙类放大器的交越失真问题,效率又比甲类放大器高,因此获得了极为广泛的应用。 4、丁类功放也称数字式放大器,利用极高频率的转换开关电路来放大音频信号,具有效率高,体积小的优点。许多功率高达1000W的丁类放大器,体积只不过像VHS录像带那么大。这类放大器不适宜于用作宽频带的放大器,但在有源超低音音箱中有较多的应用。 问题三:电容C的阻抗表达式?电容阻抗计算公式是什么?q=UC;I=dq/dt=jwUC ;Zc=U/I=1/jwC ;|Zc|=1/wC ;C=εS/4πkd 式中k为静电力常量,介电常数ε由两极板之间介质决定。 问题四:容抗=-j/wc,j表示虚数部分,电容有无功分量,所以要用虚数表示。电容的容抗表达式:XC=1/(2*pi*f*C),电感的感抗表达式:XL=2*pi*f*L.f为交流频率,L,C分别为电感和电容。电感对交流的阻碍能力叫“感抗”。电容对交流的阻碍能力叫“容抗”。 问题三:PCB布线的规则?1 电源、地线的处理:众所周知的是在电源、地线之间加上去耦电容。尽量加宽电源、地线宽度,最好是地线比电源线宽,它们的关系是:地线>电源线>信号线 2、数字电路与模拟电路的共地处理:现在有许多PCB不再是单一功能电路(数字或模拟电路),而是由数字电路和模拟电路混合构成的。电路和模拟电路混合 构成的。因此在布线时就需要考虑它们之间互相干扰问题,特别是地线上的噪音干扰。数字电路的频率高,模拟电路的敏感度强,对信号线来说,高频的信号线尽可能远离敏感的模拟电路器件,对地线来说,整人PCB对外界只有一个结点,所以必须在PCB内部进行处理数、模共地的问题。3手工布局自动布局a.布局的首要原则是保证布线的布通率,移动器件时注意飞线的连接,把有连线关系的器件放在一起b.数字器件和模拟器件要分开,尽量远离 c.去耦电容尽量靠近器件的VCCd.放置器件时要考虑以后的焊接,不要太密集e.多使用软件提供的Array和Union功能 第三题:选择,无线运行商有那几家?中国电信 中国联通 中国移动通讯 第六问:DMA的英文拼写是“Direct Memory Access”,汉语的意思就是直接内存访问,是一种不经过CPU而直接从内存存取数据的数据交换模式。在DMA模式下,CPU只须向DMA控制器下达指令,让DMA控制器来处理数据的传送,数据传送完毕再把信息反馈给CPU,这样就很大程度上减轻了CPU资源占有率,可以大大节省系统资源。DMA模式又可以分为Single-Word DMA(单字节DMA)和Multi-Word DMA(多字节DMA)两种,其中所能达到的最大传输速率也只有16.6MB/s.第八问:分析二极管的作用?二极管最主要的特性是单向导电性; 1、正向特性 2、反向特性 3、击穿特性 4、频率特性 第七问:什么是线与(老题了)?硬件上实现有什么要求;?线与逻辑是两个输出信号相连可以实现与的功能。在硬件上,要用oc门来实现(漏极或者集电极开路),由于不用oc门可能使灌电流过大,而烧坏逻辑门,同时在输出端口应加一个上拉电阻。(线或则是下拉电阻)将几个OC门结构与非门输出并联,当每个OC门输出为高电平时,总输出才为高,这种连接方式称为线与。第九问: 怎么用万用表量电流值? 1.选择量程:万用表直流电流档标有“mA”有1mA、1omA、100mA三档量程。选择量程,应根据电路中的电流大小。如不知电流大小,应选用最大量程。2.测量方法:万用表应与被测电路串联。应将电路相应部分断开后,将万用表表笔接在断点的两端。红表笔应接在和电源正极相连的断点,黑表笔接在和电源负极相连的断点.第十一问:第五题:翻盖手机的设计,器件(LCD:分辨率、响应时间、亮度)选择等(自由发挥的);还有就是检测到翻盖中断,怎么处理中断?滑盖手机的设计:(外观、尺寸、材质)面板的设计:材质LCD()、按键、电池盖、MIC(Receiver、Speaker)、耳机插孔、moter(震动)、蓝牙等等;(终于到我了,我交出简历,然后坐下说:“你好,我叫****,应聘的职位是网络工程师。”(后来这成了每一轮面试我都要说的一句话),他看了看,说:“你叫****,你的名字很有意思,哈。”我尴尬,他递给我一份明天面试的通知单。) 硬件题目 1.用mos 管搭出一个二输入与非门。 2.集成电路前段设计流程,写出相关的工具。 3.解释名词IRQ,BIOS,USB,VHDL,SDR。 4.简述如下Unix 命令cp-r, rm,uname。 5.用波形表示D 触发器的功能。 6.写异步D 触发器的verilog module。 7.What is PC Chipset? 8.用传输门和倒向器搭一个边沿触发器。 9.画状态机,接受1,2,5 分钱的卖报机,每份报纸5 分钱。DSP 题目 1.H(n)=−a*h(n−1)+b*δ(n) (1)求h(n)的z 变换 (2)该系统是否为稳定系统 (3)写出FIR 数字滤波器的差分方程 2.写出下面模拟信号所需的最小采样带宽 (1)模拟信号的频率范围是0~4kHz (2)模拟信号的频率范围是2~4kHz 3.名词解释 (1)量化误差 (2)直方图 (3)白平衡 (4)MMX 4.写出下面几种格式中用到的压缩技术 (1)JPEG (2)MPEG2 (3)MP3 1.下面是一些基本的数字电路知识问题,请简要回答: (1)什么是Setup 和Holdup 时间? (2)什么是竞争与冒险现象?怎样判断?如何消除? (3)请画出用D 触发器实现2 倍分频的逻辑电路。 (4)什么是“线与”逻辑?要实现它,在硬件特性上有什么具体要求? (5)什么是同步逻辑和异步逻辑? (6)请画出微机接口电路中,典型的输入设备与微机接口逻辑示意图(数 据接口、控制接口、所存器/缓冲器)。 (7)你知道哪些常用的逻辑电平?TTL 与COMS 电平可以直接互连吗? 2.可编程逻辑器件在现代电子设计中越来越重要,请问: (1)你所知道的可编程逻辑器件有哪些? (2)试用VHDL 或Verilog,ABLE 描述8 位D 触发器逻辑 3.设想你将设计完成一个电子电路方案。请简述用EDA 软件(如PROTEL)进行设计(包括原理图和PCB 图)到调试出样机的整个过程。在各个环节应注意 哪些问题? 1.用逻辑门和cmos 电路实现ab+cd 2.用一个二选一mux 和一个inv 实现异或。 3.给了reg 的setup 和hold 时间,求中间组合逻辑的delay 范围。 4.如何解决亚稳态。 5.用Verilog/VHDL 写一个fifo 控制器。 6.用Verilog/VDDL 检测stream 中的特定字符串 1.DSP 和通用处理器在结构上有什么不同?请简要画出你熟悉的一种DSP 结 构图。 2.说说定点DSP 和浮点DSP 的定义(或者说出他们的区别)。 3.说说你对循环寻址和位反序寻址的理解。 4.请写出【−8,7】的二进制补码和二进制偏置码。用Q15 表示出0.5 和−0.5。 1.压控振荡器的英文缩写。 3.选择电阻时要考虑什么? 4.单片机上电后没有运转,首先要检查什么? 5.计算机的基本组成部分及其各自的作用。 6.怎样用D 触发器、与或非门组成二分频电路? 1.说出RC 振荡器的构成和工作原理。 2.什么是SDH? 3.什么是共模、差模?画出差分电路的结构。 4.a=5;b=6;a+=b++;执行结果是什么? 5.什么是TDM?什么是CDMA? 6.什么是采样定理? 7.什么是香农定理? 8.计算机的中断有哪几类? 微电子 1.名词解释:VLSI,CMOS,EDA,VHDL,Verilog,HDL,ROM,RAM,DRC,LVS。 2.简述CMOS 工艺流程。 3.画出CMOS 与非门的电路,并画出波形图简述其功能。 4.画出N 沟道增强型MOSFET 的剖面图。 5.简述ESD 和latch-up 的含义。 6.简述三极管与MOS 管的区别。 7.简述MOORE 模型和MEALY 模型。 8.简述堆栈与队列的区别。第四篇:硬件工程师笔试题目
第五篇:硬件工程师找工作笔试题目