软件类笔试大汇总.docx
《软件类笔试大汇总.docx》由会员分享,可在线阅读,更多相关《软件类笔试大汇总.docx(27页珍藏版)》请在冰豆网上搜索。
![软件类笔试大汇总.docx](https://file1.bdocx.com/fileroot1/2023-2/21/fc1d6973-062e-4a62-818a-aca4a17b50a7/fc1d6973-062e-4a62-818a-aca4a17b50a71.gif)
软件类笔试大汇总
中兴通讯2008届校园招聘笔试样卷
(软件)
一选择题(40分,1分/题)
题目1:
在下面列出的几种语言中,哪一种是关系数据库的标准语言?
(C)
A.C
B.FORTRAN
C.SQL
D.PASCAL
考点说明:
数据库
难度:
简单
题目2:
在主键与外键的相互关系描述中下面哪个操作不破坏参照完整性:
(A)
A.主键值存在,删除外键值。
B.外键值存在,删除主键值。
C.主键值不存在,插入外键值。
D.都破坏
考点说明:
数据库
难度:
一般
题目3:
下面的语句将从OrderHist表中找出产品ID=2的订单总量,请选择最优语句将其补充完整(C)
SELECTproductid,SUM(quantity)AStotal_quantity
FROMorderhist
________________________________
GO
A.WHEREproductid=2
B.Havingproductid=2
C.WHEREproductid=2GROUPBYproductid
D.GROUPBYproductidHavingproductid=2
E.都不对。
考点说明:
数据库
难度:
一般
题目4:
设有关系R,S和T如下。
关系T是由关系R和S经过哪种操作得到的?
(B)
R
┌─┬─┬─┐ST
│A│B│C│┌─┬─┬─┐┌─┬─┬─┐
├─┼─┼─┤│A│B│C││A│B│C│
│1│2│3│├─┼─┼─┤├─┼─┼─┤
│4│1│6││4│1│6││1│2│3│
│3│2│4││2│7│1││3│2│4│
└─┴─┴─┘└─┴─┴─┘└─┴─┴─┘
A.R∪S
B.R-S
C.R×S
D.R∞S
考点说明:
数据库
难度:
一般
题目5:
设有关系R(S,D,M),其函数依赖集F={S→D,D→M}。
则关系R至多满足(B)
A.1NF
B.2NF
C.3NF
D.BCNF
考点说明:
数据库
难度:
一般
题目6:
关于SQL2000的存储过程,描述不正确的是:
(D)
A.单个存储过程中执行一系列SQL语句。
B.从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句。
C.过程在创建时即在服务器上进行编译,所以执行起来比单个SQL语句快。
D.过程可以接受参数、输出参数,但没有返回值。
考点说明:
数据库
难度:
一般
题目7:
在多进程的并发系统中,肯定不会因竞争(D)而产生死锁
A.打印机
B.磁带机
C.磁盘
D.CPU
考点说明:
操作系统
难度:
简单
题目8:
临界区是指(B):
A.进程的竞争条件
B.共享内存进行访问的程序片段
C.程序边界的代码
考点说明:
操作系统
难度:
一般
题目9:
管道(pipe)是一种连接两个进程的(A):
A.虚拟文件
B.终端
C.虚拟机
D.通信机制
考点说明:
操作系统
难度:
一般
题目10:
在虚拟页式存储管理方案中,下面哪一部分完成将页面调入内存的工作?
(A)
A.缺页中断处理
B.页面淘汰过程
C.工作集模型应用
D.紧缩技术利用
考点说明:
操作系统
难度:
一般
题目11:
关于软件测试的描述,以下说法不正确的是(D)
A.测试是为了发现程序中的错误而执行程序的过程。
B.好的测试方案是极可能发现以前尚未发现的错误的测试方案。
C.成功的测试是发现了以前尚未发现的错误的测试。
D.在集成测试阶段,由程序的编写者进行软件测试是最恰当的。
考点说明:
软件工程
难度:
简单
题目12:
同行评审是CMM五个等级中哪一级的KPA(B)
A.2
B.3
C.4
D.5
考点说明:
软件工程
难度:
一般
题目13:
软件设计一般划分为系统设计和详细设计,以下哪一项应属于系统设计内容?
(B)
A.界面设计
B.结构设计
C.代码设计
D.变量定义
考点说明:
软件工程
难度:
一般
题目14:
软件工程学一般认为应包括:
软件开发技术和软件工程管理两部分内容,下述哪个(些)是软件工程管理的内容?
Ⅰ.人员组织Ⅱ.进度安排Ⅲ.质量保证Ⅳ.成本核算(D)
A.Ⅰ和Ⅱ
B.Ⅱ和Ⅲ
C.Ⅲ和Ⅳ
D.都是
考点说明:
软件工程
难度:
一般
题目15:
软件测试与排错是两类相互联系而又性质不同的活动,下述哪个不具有排错活动的特征?
()
A.修改程序
B.运用推理和归纳方法
C.了解程序细节
D.运用测试实例
考点说明:
软件工程
难度:
较高
题目16:
两个码字(10011010)(10101100)之间的汉明距离是多少?
码字(100010111000)的汉明重量是多少?
(C)
A.汉明距离是4;汉明重量是4
B.汉明距离是3;汉明重量是4
C.汉明距离是4;汉明重量是5
D.汉明距离是5;汉明重量是4
考点说明:
通信原理
难度:
一般
题目17:
下列通讯标准,哪个不是目前第三代移动通讯的主要标准(D)
A.欧洲的W-CDMA
B.北美的CDMA2000
C.中国的TD-SCDMA
D.德国的CDMA2006
考点说明:
通信原理
难度:
简单
题目18:
相干解调和非相干解调,哪一种方法用于频域,哪一种用于时域。
(D)
A.相干解调试频域,非相干解调试时域
B.非相干解调试频域,相干解调试时域
C.都是频域
D.都是时域
考点说明:
通信原理
难度:
一般
题目19:
在线性分组码中,要求码字能(a)纠正t个错误(b)纠t个错,检测e个错(e>t)时,对码字距离d的要求分别是多少?
(D)
A.(a)2t(b)t+e
B.(a)2t+1(b)t+e
C.(a)2t(b)t+e+1
D.(a)2t+1(b)t+e+1
考点说明:
通信原理
难度:
一般
题目20:
PAL电视制的帧频是帧/秒,NTSC彩色电视制的帧频是帧/秒(C)
A.2525
B.3030
C.2530
D.3025
考点说明:
多媒体
难度:
一般
题目21:
以下压缩标准中,哪些不属于语音编解码,()
A.G.711
B.MP3
C.G.723.1
D.AMR
考点说明:
多媒体
难度:
一般
题目22:
RTSP是一种用于(B)的协议
A.媒体数据传输
B.媒体控制
C.资源预留协议
D.链路层协议
考点说明:
多媒体
难度:
一般
题目23:
IEEE802.2协议中10BASE-T标准规定在使用5类双绞线时,从网卡到集线器的最大距离为(A)
A.100m
B.185m
C.300m
D.500m
考点说明:
协议(计算机网络)
难度:
一般
题目24:
如果子网屏蔽码是255.255.192.0,那么下列主机那一个必须通过路由器与主机129.23.144.16通信。
()
A.129.23.191.21
B.129.23.130.33
C.129.23.148.127
D.129.23.127.222
考点说明:
协议(计算机网络)
难度:
较高
题目25:
Internet中的TCP/IP分层协议体系结构分为四层,下列哪些描述不是其中之一(B)
A.应用层
B.会话层
C.传输层
D.网络层
E.数据链路和物理层
题目26:
下列操作系统哪一个不是目前比较流行的嵌入式操作系统(D)
A.WinCE、
B.VxWorks
C.Linux
D.FreeBSD
考点说明:
IC
难度:
一般
题目27:
下列中断中,哪一个不属于强迫性中断?
(D)
A.设备出错
B.掉电
C.时间片到时
D.执行print语句
考点说明:
底层语言
难度:
一般
题目28:
下面程序的运行结果是:
(A)
inta=0;
fun(inti)
{
a+=2*i;
returna;
}
main()
{
inta=10;
printf("%d,%d\n",fun(a),a);
}
A.20,10
B.0,10
C.10,10
D.10,20
考点说明:
工具语言
难度:
一般
题目29:
请选择下面程序的正确运行结果:
(A)
voidFunc1()
{
chara[]="helloworld";
char*p=a;
cout<cout<}
A.124
B.44
C.1212
D.412
E.都不对
考点说明:
IC
难度:
一般
题目30:
下列C程序运行之后,a1、a2的值为:
(D)
inta1,a2;
intb=5,c=7,d=0;
a1=!
d;
a2=(b!
=c);
A.0,0
B.0,1
C.1,0
D.1,1
考点说明:
工具语言
难度:
一般
题目31:
请选择下列C程序的可能的输出结果:
(C)
union_UnionTest
{
unsignedinti;
unsignedcharch[2];
};
_UnionTestuniontest;
uniontest.i=0x1420;
printf("%d\t%d\n",uniontest.ch[0],uniontest.ch[1]);
A.00
B.1420
C.3220
D.2014
考点说明:
工具语言
难度:
较高
题目32:
下列C程序段运行的输出结果是哪一个(B)
charbuf1[10]=“hello”;
charbuf2[10]=“hello”;
if(buf1==buf2)
printf(“equal”);
else
printf(“notequal”);
A.equal
B.notequal
C.hello
D.编译错误
考点说明:
工具语言
难度:
一般
题目33:
以下为MCS51汇编语言问题
设SP值为40H时
执行以下指令:
PUSH#53H
PUSH#54H
MOVA,41H
请问执行完上述指令后寄存器SP和A的值是多少(B)
A.SP=43HA=53H
B.SP=42HA=54H
C.SP=43HA=54H
D.SP=42HA=53H
考点说明:
底层语言
难度:
较高
题目34:
下列C程序段运行之后,*(*(p+2)+1)的值为:
(C)
char*pn[]={"abcd","efgh","ijkl","mnop"};
char**p;
p=pn;
A)‘f’
B)‘g’
C)‘j’
D)‘k’
考点说明:
工具语言
难度:
一般
题目35:
请选择下列C语句中关于typedef用法错误的一个:
(D)
A)typedefINTint;
B)typedefunsignedcharbyte;
C)typedefcharstr40[41];
D)typedeflongfloatdouble;
考点说明:
工具语言
难度:
一般
题目36-40:
一棵查找二叉树,其结点A、B、C、D、E、F依次存放在一个起始地址为n(假定地址以字节为单位顺序编号)的连续区域中,每个结点占4个字节;前二个字节存放结点值,后二个字节依次放左指针、右指针。
若该查找二叉树的根结点为E,则它的一种可能的前序遍历为__
(1)__,相应的层次遍历为__
(2)__。
在以上两种遍历情况下,结点C的左指针Lc的存放地址为__(3)__,Lc的内容为__(4)__。
结点A的右指针RA的内容为__(5)__。
(36)A.EAFCBD B.EFACDB C.EABCFD D.EACBDF
(37)A.EAFCBD B.EFACDB C.EABCFD D.EACBDF
(38)A.n+9 B.n+10 C.n+12 D.n+13
(39)A.n+4 B.n+8 C.n+12 D.n+16
(40)A.n+4 B.n+8 C.n+12 D.n+16
考点说明:
工具语言(数据结构)
难度:
一般
二.判断题(10分.1分/题)
(1)数据库系统模型中,层次模型、网状模型、关系模型三种模型是目前使用的,其中网状模型是最具优势的模型(F)
(考点:
数据库难度:
简单)
(2)当进程的大小超过系统允许运行的内存大小时,该进程将被挂起。
(F)
(考点:
操作系统难度:
简单)
(3)单元测试一般是以黑盒法为主进行的,它的测试依据是模块功能说明书。
(F)
(考点:
软件工程难度:
一般)
(4)GSM系统的上行信道和下行信道之间采用的是FDD。
()
(考点:
通讯原理难度:
较高)
(5)以太网标准的帧的信息字段最大长度为1500字节,以太网帧封装IP数据报时应使用所分配的值16进制为0800()
(考点:
协议难度:
一般)
(6)面向连接的虚电路在ATM网络中采用DLCI标识。
()
(考点:
协议难度:
一般)
(7)因特网上在一个应用程序中使用H.323IP电话实时服务,必须实现两个协议,其中RTCP是为了实时数据报文的传输,RTP是为了监视提供给已有实时数据报文传输的会话质量。
(F)
(考点:
多媒体难度:
较高)
(8)Heap(堆)是一块被用作动态内存分配的内存区域,调用malloc和free在运行时进行堆的操作,C++的操作符new、delete也是在运行时进行堆的操作。
(T)
(考点:
IC难度:
一般)
(9)8051单片机的堆栈采用向上生长方式。
(T)
(考点:
底层语言难度:
一般)
(10)static变量定义在函数中占堆栈。
(F)
(考点:
工具语言难度:
一般)
三.简答(32分)
1.简要说明香农公式。
通过香农公式是否可以认为,信道频带的无限增大可以使信道容量无限增大?
请简述原因。
(6分)
(考点:
通讯难度:
一般)
参考答案:
其中C表示信道容量,B是带宽,S/N为信噪比
不能。
因为按公式
,其中
2.C++语言的特性有哪些?
C++语言中什么是纯虚函数,请给出其定义格式和作用。
(6分)
(考点:
工具语言难度:
一般)
参考答案:
封装、继承、多态
纯虚函数是一种特殊的虚函数,它的一般格式如下:
class <类名>
{
virtual <类型><函数名>(<参数表>)=0;
…
};
在许多情况下,在基类中不能对虚函数给出有意义有实现,而把它说明为纯虚函数,它的实现留给该基类的派生类去做。
这就是纯虚函数的作用。
3.UDP和TCP分别代表什么含义?
它们之间的主要区别有哪些?
请列举一些使用了TCP和UDP的上层网络协议。
(6分)
(考点:
协议难度:
一般)
参考答案:
UDP是用户数据报协议,TCP是传输控制协议。
UDP提供的是一种不可靠的、无连接的分组传输服务。
UDP不提供差错控制和流量控制。
TCP提供的是一种可靠的、面向连接的数据流传输服务,利用滑动窗口提高网络效率,并提供差错控制和流量控制。
常用的UDP协议有:
简单文件传送协议(TFTP)、简单网络管理协议(SNMP)、选路信息协议(RIP)等。
常用的TCP协议有:
文件传送协议(FTP)、终端连接协议(TELNET)、简单文件运输协议(SMTP)、万维网(WWW)、HTTP、远程登录命令(RLOGIN)等。
4.设有2路模拟信号,带宽分别为2kHz、4kHz,对模拟信号采用PCM方式,量化级数为32级;另有4路数字信号,数据率都为8000bit/s。
当采用同步时分多路复用(TDM)方式将其复用到一条通信线路上,假定复用后为数字传输,画出复用连接图,并计算复用线路需要的最小通信能力是多少?
(6分)
(考点:
通讯难度:
一般)
参考答案:
复用连接图如下所示:
2KHZPCM
4KHZPCM
8000bit/sMUX92kbit/s
8000bit/s
8000bit/s
8000bit/s
由于2路模拟信号量化级数为32级,即每次采样用5位表示,需要的数据率分别是20kbit/s和40kbit/s.对于4路数字信号,需要的通信能力为4X8000bit/s=32kbit/s,所以最小通信能力是92kbit/s.
5.阅读以下程序说明和C程序,将应填入(n)处的字句补充完整。
(8分)
(考点:
工具语言难度:
较高)
[程序说明]
本程序三位正整数中寻找符合下列条件的整数:
它既是完全平方数,又有两位数学相同,例如144、676等,
程序找出所有满足上述条件的三位数并输出。
[程序]
main()
{
intn,k,a,b,c;
for(k=1;;k++)
{
(1);
if(n<100)
(2);
if(n>999)(3);
a=n/100;
b=(4);
c=n%10;
if(flag(a,b,c))
printf(“N=%d=%d*%d\n”,n,k,k);
}
}
intflag((5))
{
return!
((x–y)*(x–z)*(y–z));
}
参考答案:
(1)n=k*k
(2)contiue
(3)break
(4)n%100/10或n/10%10或(n-100*a)/10或n/10-(n/100)*10或n/10-a*10或(n-(n/100)*100-n%10)/10
(5)intx,inty,intz(次序可交换)
四.编程(18分)
1.编写strcpy函数(8分)(考点:
工具语言难度:
一般)
已知strcpy函数的原型是
char*strcpy(char*strDest,constchar*strSrc);
其中strDest是目的字符串,strSrc是源字符串。
不调用C++/C的字符串库函数,请编写函数strcpy
参考答案:
char*strcpy(char*strDest,constchar*strSrc);
{
assert((strDest!
=NULL)&&(strSrc!
=NULL));
char*address=strDest;
while((*strDest++=*strSrc++)!
=‘\0’)
NULL;
returnaddress;
}
2.阅读下列函数说明,并编写函数(10分)(考点:
工具语言难度:
较高)
<函数说明>
本题中的函数encode()实现对字符串的变换.变换函数encode()顺序考察已知字符串的字符,按以下规则逐组生成新字符串:
(1)若已知字符串的当前字符不是数字字符,则复制该字符于新字符串中.
(2)若已知字符串的当前字符是一个数字字符,且它之后没有后继字符,则简单地将它复制到新字符串中
(3)若已知字符串的当前字符是一个数字字符,并且还有后继字符,设该数字字符的面值为n,则将它的后继字符(包括后继字符是一个数字字符)重复复制n+1次到新字符串中.
(4)以上述一次变换为一组,在不同组之间另插入一个下划线’_’用于分隔.例如:
encode()函数对字符串26a3t2的变换结果为666_a_tttt_2
假定调用变换函数encode()时的已知字符串中不含下划线字符.
<函数原形>
intencode(char*instr,char*outstr);
参考答案:
intencode(char*instr,char*outstr)
{
char*ip,*op,c;
intk,n;
ip=instr;
op=outstr;
while(*ip)
{
if(*ip>='0'&&*ip<='9'&&*(ip+1))
{
n=*ip-'0'+1;
c=*++ip;
for(k=0;k{
*op++=c;
}
}
else
{
*op++=*ip;
}
*op++='_';
ip++;
}
if(op>outstr)
{
op--;
}
*op='\0';
returnop-outstr;
}
1、局部变量能否和全局变量重名?
答:
局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。
对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内
2、如何引用一个已经定义过的全局变量?
答:
可以用引用头文件的方式,也可以用extern关键字,如果用引用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个变写错了,那么在编译期间会报错,如果你用extern方式引用时,假定你犯了同样的错误,那么在编译期间不会报错,而在连接期间报错。
(不要问我什么是编译期间,什么是连接期间,请自己查资料)
3、全局变量定义在可被多个.C文件包含的头文件中可不可以?
为什么?
答:
可以,但要加static
4、语句for(;1;)有什么问题?
它是什么意思?
答:
死循环,同while
(1),这种写法并不规范,可读性差,一般不用
5、do……while和while……do有什么区别?
答:
前一个循环一遍再判断,后一个判断以后再循环
6、请写出下列代码的输出内容
#include
main()
{
inta,b,c,d;
a=10;
b=a++;
c=++a;
d=10*a++;
printf("b,c,d:
%d,%d,%d",b,c,d);
return0;
}
答:
10,12,120
7.static函数与普通函数有什么区别?
只在当前源文件中使用的函数应该说明为内部函数(static),内部函数应该在当前源文件中说明和定义。
对于可在当前源文件以外使用的函数,应该在一个头文件中说明,要使用这些函数的源文件要包含这个头文件。
8.static全局变量与普通的全局变量有什么区别?
全局变量(外部变量)的说明之前再冠以static就构成了静态的全局变量。
全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。
这两者在存