亚信笔试题卷以及答案.docx
《亚信笔试题卷以及答案.docx》由会员分享,可在线阅读,更多相关《亚信笔试题卷以及答案.docx(15页珍藏版)》请在冰豆网上搜索。
![亚信笔试题卷以及答案.docx](https://file1.bdocx.com/fileroot1/2023-1/25/13fd043d-4131-4dea-b366-b7ab9090f23d/13fd043d-4131-4dea-b366-b7ab9090f23d1.gif)
亚信笔试题卷以及答案
亚信联创科技校园招聘
B卷
考试时间60_分钟_考试方式(闭)卷
(本试卷满分100分,答案请写在答题卡上)
请不要在问卷上答题或涂改,笔试结束后请务必交回试卷
部分
内容
分值
备注
技能部分
一、计算机基础
40分
二、
C/C++语言基础
JAVA语言基础
40分
二选一
40分
三、数据库
20分
总分
100分
第一部分——计算机基础
一、选择题(每题2分,总分40分)
1.CPU状态分为目态和管态两种,什么是从目态转换到管态的唯一途径(D)
A.运行进程修改程序状态字B.进程调度程序C.中断屏蔽D.中断
2.引入多道程序设计的目的是(C)
A.增强系统的用户友好性B.提高系统实用性C.充分利用CPUD.扩充内存容量
3.Windows系统是一个(B)操作系统。
A、单用户单系统B、单用户多任务C、多用户单任务D、多用户多任务
4.在半导体存储器中,动态随机存储器DRAM的特点是(D)。
A、按位结构方式存储B、按字结构方式储存
C、信息在储存介质中移动D、每隔一定时间进行一次刷新
5.单地址指令的格式是由(B)构成。
A、操作码和操作数地址B、操作码和原操作数地址
C、操作码和目的操作数地址D、操作码和下一条指令地址
6.八进制数76转换为二进制数为(C)
A、110111B、111101C、111110D、111111
7.80486型号的微处理器能同时处理的二进制位数是(C)位。
A、8B、16C、32D、64
8.下面关于串的的叙述中,哪一个是不正确的(B)
A.串是字符的有限序列
B.空串是由空格构成的串
C.模式匹配是串的一种重要运算
D.串既可以采用顺序存储,也可以采用链式存储
9.若串S1=‘ABCDEFG’,S2=‘9898’,S3=‘###’,S4=‘012345’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2)))其结果为()
A.ABC###G0123
B.ABCD###2345
C.ABC###G1234
D.ABCD###1234
10.设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为(C)
A.求子串B.联接C.匹配D.求串长
11.下列字符中,ASCII码值最大的是(D)。
A.空格B.MC.8D.m
12.下列叙述中,正确的是(A)。
A.内存中存放的是当前正在执行的应用程序和所需的数据
B.内存中存放的是当前暂时不用的程序和数据
C.外存中存放的是当前正在执行的程序和所需的数据
D.内存中只能存放指令
13.能直接与CPU交换信息的存储器的是(C)。
A.硬盘存储器B.CD-ROM
C.内存储器D.软盘存储器
14.一个汉字的国际码需用(B)。
A.1个字节B.2个字节C.3个字节D.4个字节
15.执行下列二进制算术加法运算:
,其运算结果是(A)。
A.B.
C.00010000D.
16.二进制数110101转换为八进制数是(B)。
A.71B.65C.56D.51
17.操作系统中采用缓冲技术的目的是为了增强系统(D)的能力。
A.串行能力B.控制操作C.重执操作D.并行操作
18.我们把在一段时间内,只允许一个进程访问的资源称为临界资源,因此我们可以得出下列结论,正确的是(B)。
A.对临界资源是不能实现资源共享的
B.只要能使程序并发执行,这些并发执行的程序便可对临界资源实现共享
C.为临界资源配上相应的设备控制块后,便能被共享
D.对临界资源,应采取互斥访问方式,来实现共享
19.算法分析的两个主要方面是(A)。
A.空间复杂度和时间复杂度B.正确性和简单性
C.可读性和文档性D.数据复杂性和程序复杂性
20.线性表采用链式存储时,结点的存储地址(C)。
A.必须是连续的
B.必须是不连续的
C.连续与否均可
D.和结点的存储地址相连续
第二部分C/C++语言基础
一、选择题(含单选题和多选题,每题2分,总分40分)
1、A为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为
A)publicB)protectedC)privateD)static
2、C类的析构函数是在什么时候调用的
A)类创建时B)创建对象时C)删除对象时D)不自动调用
3、B在位运算中,操作数每右移一位,其结果相当于
A)操作数乘以2B)操作数除以2C)操作数乘以4D)操作数除以4
4、A下列语句中不是死循环的是
A)inti=10;B)for(inti=1;i<10;i++)
while
(1){
}i--;
i--;}
if(i==1)break;
}
C)inti=0;D)inti=1;
do{for(;;)i=i+1;
i++;
}while(i>=0):
5、B下列描述正确的是
A)表示m>n为true或mn&&m B)switch语句结构中必须有default语句
C)if语句结构中必须有else语句
D)如果至少有一个操作数为true,则包含“‖”运算符的表达式为true
6、B在关联容器中,下列哪个描述正确
A)值按排序后的次序存储
B)键按排序后的次序存储
C)按照字母大小或数值大小的次序排序
D)必须用排序函数sort()重新排列内容次序
7、D以下一段程序,每个人都有不同的书写习惯,但从工程和编程规范的角度综合考量,下面哪个写法相对比较恰当:
A)if(var<3)var=var+1;
B)if(value<3)
value++;
C))if(user<3)
++user;
D)if(value<3)
{++value};
8、D执行语句序列
intn;
cin>>n;
switch(n){
case1:
case2:
cout<<'X';
case3:
case4:
cout<<'Y';break;
default:
cout<<'Z';}
时,不可能出现的情况是:
A)显示:
XB)显示:
YC)显示:
ZD)显示:
XY
9、D有如下两行定义,此写法产生于某一项目组,从实践的角度出发,并不能评价好或不好,但从中可以得到启示,我们需要更注意编码规范,以下哪种说法相较不太可取:
charEndDate[8+1];_str());
returnNORMAL;
}
A)m_infoPoint获得了infoPoint的地址
B)m_infoPoint获得了infoPoint的地址的地址
C)m_infoPoint获得了infoPoint的值
D)m_infoPoint获得了infoPoint的值的值
18、下面为不正确的字符串赋值或赋值方式是
A)char*str;str=”string”;
B)charstr[7]={’s’,’t’,’r’,’i’,’n’,’g’};
C)charstr1[10];str1=”string”;
D)charstr1[]=”string”,str2[]=”;strcpy(str2,str1);
19、下面函数的功能是
intfun(char*x)
{
char*y=x;
while(*y++);
return(y-x-1);
}
A)求字符串的长度
B)比较两个字符串的大小
C)将字符串x复制到字符串y
D)将字符串x连接到字符串y后面
20、现有某多线程程序如下:
#include
#include<>
usingnamespacestd;
pthread_tntid;
staticlonglData=0;
staticboolbFlag=false;
staticvoid*thr_fn(void*arg)
{
while
(1)
{
sleep
(1);
if(bFlag){
cout<<"currentdatais:
"<}
bFlag=false;
}
return((void*)0);
}
intmain(void)
{
interr;
err=pthread_create(&ntid,NULL,thr_fn,NULL);
if(err!
=0)
printf("error");
while
(1){
lData=random();
bFlag=true;
sleep
(1);
}
pthread_join(ntid,0);
exit(0);
}
主要功能是在主线程中生成随机数,在工作线程中读出相应的数据,并显示在屏幕上,,以下哪个建议无助于改良代码:
A)C/C++用法混乱,宜统一风格
B)sleep时间太短,应改成sleep(1000)
C)bFlag读写处应加锁保护
D)sleep不精确,应改为生产/消费方
第二部分JAVA语言基础
一、选择题(含单选题和多选题,每题2分,总分40分)
1、C设有定义语句inta[]={66,88,99};则以下对此语句的叙述错误的是
A)定义了一个名为a的一维数组B)a数组有3个元素
C)a数组的下标为1~3D)数组中的每个元素是整型
2、B在计算机中,数值数据一般采用()形式存储
A.原码B.补码C.反码D.真值
3、A为了区分重载多态中同名的不同方法,要求
A)采用不同的形式参数列表B)返回值类型不同
C)调用时用类名或对象名做前缀D)参数名不同
4、CJava程序经常用到“递归”,“递归”的基本思想是
A.让别人反复调用自己
B.自己反复调用被人
C.自己反复调用自己
D.以上都不对
5、C下列选项中,用于在定义子类时声明父类名的关键字是
A)interfaceB)packageC)extendsD)class
6、C在Java中,一个类可同时定义许多同名方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不同。
这种面向对象程序的特征称为
A.隐藏
B.覆盖
C.重载
D.Java不支持该特性
C7、设a,b,c,d均为int型的变量,并已赋值,下列表达式的结果属于非逻辑值的
是
A)a!
=b&c%dC)++a*b--+dD)a+b>=c+d
8、关于以下程序段,正确的说法是
1.Strings1=”a”+”b”;
2.Strings2=newString(s1);
3.if(s1==s2)
5.if(s2))
A.行4和行6都将执行
B.行4执行,行6不执行
C.行6执行,行4不执行
D.行4和行6都不执行
9、若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是
A)b=a!
=7;B)a=7+b+c=9;
C)i=*%4;D)a=a+7=c+b
10、执行语句inti=1;j=++i;后,i与j的值分别是
A.1与1
B.2与1
C.1与2
D.2与2
11、Given:
1.publicclassDelta{
2.staticbooleanfoo(charc){
4.returntrue;
5.}
6.publicstaticvoidmain(String[]argv){
7.inti=0;
8.for(foo(‘A’);foo(‘B’)&&(i<2);foo(‘C’)){
9.i++;
10.foo(‘D’);
12.}
13.}
14.}
Whatistheresult
A.ABDCBDCB
B.ABCDABCD
C.Compilationfails.
D.Anexceptionisthrownatruntime.
12、B哪种说法阐明Java内存回收机制请选出正确的答案。
A.程序员必须手动释放内存对象
B.内存回收程序负责释放无用内存
C.内存回收程序允许程序员直接释放内存
D.内存回收程序可以在指定时间释放内存对象
13、Given:
1.publicclassTest{
2.publicintaMethod(){
3.staticinti=0;
4.i++;
5.returni;
6.}
7.publicstaticvoidmain(Stringargs[]){
8.Testtest=newTest();
9.();
10.intj=();
12.}
13.}
Whatistheresult
A.0
B.1
C.2
D.Compilationfails.
14、有如下程序段
inttotal=0;
for(inti=0;i<4;i++){
if(i==1)continue;
if(i==2)break;
total+=i;
}
则执行完该程序段后total的值为
A.0
B.1
C.3
D.6
15、Whichstatementistrue
A.catch(Xx)cancatchsubclassesofX.
B.TheErrorclassisaRuntimeException.
C.AnystatementthatcanthrowanErrormustbeenclosedinatryblock.
D.AnystatementthatcanthrowanExceptionmustbeenclosedinatryblock.
16、运行下列程序,会产生的结果的是
classXextendsThreadimplementsRunnable{
2.publicvoidrun(){
4.}
5.publicstaticvoidmain(Stringargs[]){
6.Threadt=newThread(newX());
7.();
}
}
A.第一行会产生编译错误
B.第六行会产生编译错误
C.第六行会产生运行错误
D.程序会运行和启动
17、Given:
10.inti=0;
11.for(;i<4;i+=2){
13.}
Whatistheresult
A.024
B.0245
C.01234
D.Compilationfails.
18、C下列哪个是short型的取值范围
A.-27到27-1
B.0到216-1
C.-215到215-1
D.-231到231-1
19、Given:
1.publicclassFoo{
2.publicstaticvoidmain(String[]args){
3.try{
4.return;
5.}finally{
7.}
8.}
9.}
Whatistheresult
A.Finally
B.Compilationfails.
C.Thecoderunswithnooutput.
D.Anexceptionisthrownatruntime.
20、Given:
1classTestA{
2TestBb;
3TestA(){
4b=newTestB(this);
5}
6}
7classTestB{
8TestAa;
9TestB(TestAa){
10=a;
11}
12}
13classTestAll{
14publicstaticvoidmain(Stringargs[]){
15newTestAll().makeThings();
16.codecontinueson
17}
18voidmakeThings(){
19TestAtest=newTestA();
20}
21}
Whichtwostatementsaretrueafterline15,beforemaincompletes(Choosetwo)
A.Line15causesastackoverflow.
B.Anexceptionisthrownatruntime.
C.Theobjectreferencedbyaiseligibleforgarbagecollection.
D.Theobjectreferencedbybiseligibleforgarbagecollection.
第三部分——数据库
一、选择题(含单选题和多选题,每题:
2分,总分:
20分)
1、C不允许在关系中出现重复记录的约束是通过
A.外键实现B.索引实现C.主键实现D.惟一索引实现
2、A下列对于PL/SQL块结构描述正确的是
A.块结构由声明部分、可执行部分、异常处理部分组成
B.块结构由SQL部分、条件控制结构、可执行部分组成
C.块结构由编译部分、动态链接部分、可执行部分组成
D.块结构由指示器部分、逻辑存储部分、物理存储部分组成
3、D如果要修改表TD_M_STAFF,对列STAFF_ID增加一个主键约束,当前表为空。
哪个语句能完成这个任务
A.ALTERTABLEtd_m_staffADDPRIMARYKEYstaff_id;
B.ALTERTABLEtd_m_staffADDCONSTRAINTPRIMARYKEY(staff_id);
C.ALTERTABLEtd_m_staffADDCONSTRAINTstud_id_pkPRIMARYKEYstaff_id;
D.ALTERTABLEtd_m_staffADDCONSTRAINTstud_id_pkPRIMARYKEY(staff_id);
4、SELECT语句中,以下有关ORDERBY子句的叙述中不正确的是D
A.ORDERBY子句可以对多个列进行排序
语句中,ORDERBY只能在其它子句之后作为最后一个子句出现
C.子查询中也可以使用ORDERBY子句
D.在视图中不能使用ORDERBY子句
5、B在Oracle数据库的逻辑结构中有以下组件:
A,表空间B,数据块C,区D,段
这些组件从大到小依次是
A.A->B->C->DB.A->D->C->B
C.A->C->B->DD.D->A->C->B
6、B以下关于数据的存储结构的叙述哪一条是正确的
A.数据的存储结构是数据间关系的抽象描述
B.数据的存储结构是逻辑结构在计算机存储器中的实现
C.数据的存储结构分为线性结构和非线性结构
D.数据的存储结构对数据运算的具体实现没有影响
7、AD表employee中有下列字段:
name、department、phone_number下面哪些操作可以限制人们对phone_number字段的访问
A.使用视图来访问表
B.在phone_number字段创建索引
C.在表中使用check约束
D.收回对phone_number字段的访问权限
8、B为一个表创建索引是为了
A.建立表的主键B.提高对表中数据进行查找的速度
C.对表中记录进行物理排序D.对表中记录进行编号
9、C在PL/SQL中,关于存储过程与函数的有何不同,下列描述正确的是
A.函数必须有返回值,而存储过程可以没有返回值
B.函数可以拥有参数,而存储过程不能拥有参数
C.函数和存储过程都可以作为另一个函数或存储过程的参数进行嵌套
D.函数不能包含异常处理模块,而存储过程可以包含异常处理
10、DSQL语言中,用GRANT/REVOKE语句实现数据库的
A.并发控制B.完整性控制C.一致性控制D.安全性控制