亚信笔试题B卷以及答案修订稿

合集下载

亚信科技笔试题答案

亚信科技笔试题答案

亚信科技笔试题答案一、选择题1. 在计算机系统中,用于表示数据地址的数字是()。

A. 奇数B. 偶数C. 内存地址D. 逻辑地址答案:D2. 下列哪个选项不是操作系统的基本功能?()。

A. 文件管理B. 设备管理C. 数据加密D. 进程管理答案:C3. 网络协议TCP/IP中,负责传输层数据传输的是()。

A. IPB. TCPC. UDPD. ICMP答案:B4. 在关系型数据库中,用于创建表的SQL语句是()。

A. SELECTB. INSERTC. CREATE TABLED. UPDATE答案:C5. 以下哪种数据结构是线性表的物理存储方式?()。

A. 链式存储B. 索引存储C. 顺序存储D. 哈希存储答案:C二、填空题1. 在面向对象编程中,______和______是类的三个基本特性之一,它们保证了对象的状态和行为的封装和隐藏。

答案:继承、多态2. HTTP协议是无状态的,通常使用______和______来实现用户会话状态的管理。

答案:Cookies、Session3. 在软件开发过程中,______模式是一种常用于处理多个对象之间交互的模式,它可以将对象之间的耦合度降到最低。

答案:观察者模式三、简答题1. 请简述软件开发过程中的需求分析阶段的主要任务。

答:需求分析阶段的主要任务是明确软件系统的功能和性能要求,包括识别用户的需求、系统的性能指标、操作环境等。

此阶段需要与用户进行充分的沟通,确保需求的完整性和准确性,并通过需求规格说明书等形式进行文档化,为后续的软件设计和开发打下基础。

2. 描述数据库事务的四个基本特性,并举例说明。

答:数据库事务的四个基本特性是原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。

原子性指事务中的所有操作要么全部完成,要么全部不完成,不会出现只完成部分操作的情况。

一致性指事务必须使数据库从一个一致性状态变换到另一个一致性状态,保证数据库中的数据满足所有的完整性约束。

亚信笔试题

亚信笔试题

亚信笔试题亚信公司招聘笔试题目一、选择题(每题2分,共20分)1. 在C语言中,下列哪个选项是正确的字符串定义方式?A. char str[10] = "Hello";B. char *str = "Hello";C. char str[] = {'H', 'e', 'l', 'l', 'o', '\0'};D.以上全是2. 计算机网络中,HTTP协议通常使用哪个端口进行通信?A. 21B. 25C. 80D. 1103. 以下关于数据库事务的描述,哪一项是错误的?A. 事务具有原子性;B. 事务具有一致性;C. 事务具有持久性;D. 事务具有逆变性;4. 在软件开发过程中,哪种设计模式可以处理对象间的多对多关系?A. 单例模式B. 工厂模式C. 观察者模式D. 适配器模式5. 下列哪个算法不属于动态规划算法?A. 斐波那契数列B. 背包问题C. 最长公共子序列D. 二分查找6. 在Java中,final关键字的作用是什么?A. 声明常量B. 声明抽象方法C. 限制方法被重写D. 限制变量只能被赋值一次7. 以下哪个操作系统是开源的?A. WindowsB. MacOSC. LinuxD. Unix8. 软件工程中,哪个过程负责定义软件的功能性和非功能性需求?A. 需求分析B. 设计C. 实现D. 测试9. 在HTML中,用于插入图像的标签是什么?A. <img>B. <image>C. <picture>D. <graphic>10. 数据结构中,二叉搜索树的特点是什么?A. 节点的左子树只包含小于当前节点的数B. 节点的右子树只包含大于当前节点的数C. A和B都对D. A和B都错二、简答题(每题10分,共30分)11. 请简述面向对象编程中的三个基本特性。

亚信联创笔试题目(2013年8月11日)

亚信联创笔试题目(2013年8月11日)

应聘职位亚信联创新员工面试专业知识考评表姓名:应聘职位:考评负责人:说明:一、针对每项专业知识,共分为1、2、3、4、5、五个层次,分值说明如下:5. 对此项技术/知识有着深入的理解和研究,应用自如4. 对此项技术/知识已完全掌握,且在实际工作中广泛运用3. 已基本掌握此项技术/知识,并能在实际工作中运用;有待进一步提高2. 了解此项内容的基本概念,并已开始在工作中运用;有待提高1. 对此技术/知识了解有限二、针对每项专业知识,每一位考核负责人根据考核标准分别给出分数三、针对每一项专业知识,每一位考核负责人给出的考核分数取平均值为被考核人的考核分数数据库知识及实战(Oracle)1.Oracle基本SQL编写a)在Oracle数据库创建一张名为students的表,有三个字段,分别是:姓名、年龄、入学日期,该表需要使用data1表空间。

请写出建表Sql:b)往students表中增加一个学生:张三、20岁、2005-09-01。

请写出对应的插入Sql:c)把students表中姓名为张三的学生的入学日期修改为当前日期。

请写出对应的修改Sql:d)把students表中入学日期在30天以内的学生全部删除。

请写出对应的删除Sql:2.有以下几个字段:a)用户名,变长,最大长度为31,不可为空;b)费用项,数字型,最大5位,不可为空;c)费用,数字型,最大8位,不可为空;d)创建日期,日期型,默认为系统时间。

要求:e)创建一个表,要求以用户名+费用项为主键;f)创建一个索引,索引字段为费用项+创建时间。

3.对第2题中的表按用户名+费用项分别统计,统计结果包括总费用,最大费用,最小费用,平均费用。

4.假定表A中有两个字段a、b,请用SQL语句删除该表中重复的记录。

重复的条件为对于两条记录,只要字段a一样,就认为是重复记录,这种情况只保留任意一条记录。

要求只使用一个DELETE语句。

5.请编写一个名称为get_age的存储过程,该存储过程有两个参数,一个是传入参数:姓名,一个是传出参数:年龄。

亚信科技java笔试题

亚信科技java笔试题

亚信科技java笔试题亚信科技Java笔试题参考内容在亚信科技的Java笔试中,可能会涉及到以下几个主题:面向对象编程、异常处理、多线程、集合和泛型、IO流操作等。

以下是对这些主题的详细参考内容。

1. 面向对象编程:面向对象编程是Java的核心概念之一。

面向对象编程的关键特性包括封装、继承和多态。

- 封装:封装是将数据和操作方法封装在一个类中,通过公共的方法来访问和操作数据,隐藏类的内部实现细节。

示例代码:```javapublic class Person {private String name;private int age;public String getName() {return name;}public void setName(String name) { = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}```- 继承:继承是通过子类继承父类的属性和方法,实现代码的重用和扩展。

子类可以继承父类的公共方法、属性和构造方法。

示例代码:```javapublic class Student extends Person {private String school;public String getSchool() {return school;}public void setSchool(String school) {this.school = school;}}```- 多态:多态是指通过父类的引用变量来调用子类的方法,实现动态绑定。

它可以提高代码的灵活性和重用性。

示例代码:```javapublic class Animal {public void sound() {System.out.println("Animal makes sound");}}public class Dog extends Animal {@Overridepublic void sound() {System.out.println("Dog barks");}}public class Cat extends Animal {@Overridepublic void sound() {System.out.println("Cat meows");}}public class Main {public static void main(String[] args) {Animal animal = new Animal();Animal dog = new Dog();Animal cat = new Cat();animal.sound(); // 输出 "Animal makes sound" dog.sound(); // 输出 "Dog barks"cat.sound(); // 输出 "Cat meows"}}```2. 异常处理:在Java中,异常处理是通过try-catch语句块来实现的。

亚信校招笔试题目

亚信校招笔试题目

1.BSTpublicclassBSTMinLength{publicstaticvoidmain(String[]args){TreeNodetNode11=newTreeNode(10,null,null); TreeNodetNode12=newTreeNode(50,null,null); TreeNodetNode13=newTreeNode(5,null,null); TreeNodetNode14=newTreeNode(30,null,null); TreeNodetNode21=newTreeNode(30,tNode11,tNode12); TreeNodetNode22=newTreeNode(30,tNode13,tNode14); TreeNodetNodeRoot=newTreeNode(100,tNode21,tNode22);}privatestaticintminlength(TreeNodetNode){if(tNode!=null){returngetlength(tNode,0);}return-1;}privatestaticintgetlength(TreeNodetNode,intcurLength){ intminLeft=-1;intminRight=-1;if(tNode.leftNode!=null){minLeft=getlength(tNode.leftNode,curLength+tNode.value);}if(tNode.rightNode!=null){minRight=getlength(tNode.rightNode,curLength+tNode.valu e);}if(tNode.leftNode==null&&tNode.rightNode==null){returncurLength+tNode.value;}if(tNode.leftNode==null){returnminRight;}if(tNode.rightNode==null){returnminLeft;}returnminLeft>minRight?minRight:minLeft;}}classTreeNode{intvalue;TreeNodeleftNode;TreeNoderightNode;TreeNode(intvalue,TreeNodelefeNode,TreeNoderightNode){this.value=value;this.leftNode=lefeNode;this.rightNode=rightNode;}}2.lru#include<iostream>usingnamespacestd;intlruCountMiss(intmax_cache_size,int*pages,intlen) {intcount=0;inti,j,k,n;boolflag=false;int*a=newint[max_cache_size];//初始化高速缓存数组for(i=0;i<max_cache_size;i++){a[i]=-1;}for(j=0;j<len;j++){for(i=0;i<max_cache_size;i++){if(pages[j]!=a[i]){continue;}else{break;}}if(i!=max_cache_size){for(k=i;k<max_cache_size;k++) {if(a[k]==-1){flag=true;break;}}if(!flag){for(n=i;n<max_cache_size-1;n++) {a[n]=a[n+1];}a[max_cache_size-1]=pages[j]; }else{flag=false;for(n=i;n<k-1;n++){a[n]=a[n+1];}a[k-1]=pages[j];}}else{count++;for(i=0;i<max_cache_size;i++) {if(a[i]==-1){a[i]=pages[j];flag=true;break;}}if(!flag){for(i=0;i<max_cache_size-1;i++) {a[i]=a[i+1];}a[max_cache_size-1]=pages[j];}elseflag=false;}}returncount;}intmain(){intarr[]={7,0,1,2,0,3,0,4};cout<<lruCountMiss(3,arr,8)<<endl; return0;}3.反转链表lnode*reverse(lnode*head){if(head){lnode*prev=NULL;lnode*curr=head;lnode*next=curr->next;curr->next=prev;while(next!=NULL){prev=curr;curr=next;next=next->next;curr->next=prev;}returncurr;}else{returnhead;}};lnode*reverseLinkedList(lnode*list){ if(list){lnode*ori=list;lnode*half=list;lnode*prev=list;while(list&&half&&half->next){prev=list;list=list->next;half=half->next;if(half){half=half->next;}if(list){prev->next=reverse(list);}returnori;}returnlist;}4.SJFfloatwaitingTimeSJF(int*requestTimes,int*durations,intn ){int*flags=newint[n];floatsums=0;for(inti=0;i<n;i++){flags[i]=-1;}intnowtime=0;for(inti=0;i<n;i++){intcount=0;for(intk=0;k<n;k++){if(count==0){if(requestTimes[k]<=nowtime&&durations[k]>=0){flags[count++]=k;}else{if(durations[k]>=0&&requestTimes[k]<=nowtime){ if(durations[k]<durations[flags[0]]){count=1;flags[0]=k;}elseif(durations[k]==durations[flags[0]]){ flags[count++]=k;}}}}if(count==0){count=1;for(intj=0;j<n;j++){if(durations[j]>=0){flags[0]=j;nowtime=requestTimes[j];}}}intidx=flags[0];intminreq=requestTimes[flags[0]];intmindrus=durations[idx];if(count>1){for(intj=1;j<count;j++){if(requestTimes[flags[j]]<minreq){ minreq=requestTimes[flags[j]];idx=flags[j];}}}sums+=nowtime-requestTimes[idx]; nowtime+=durations[idx];requestTimes[idx]=-1;durations[idx]=-1;}returnsums/n;}5无向连通判断是否为树#include<stdio.h>#include<stdlib.h>#include<string.h>constintN=10000,M=100000;booledge[N][N];//数组记录两点是否存在边boolvisit[N];//标记该节点是否访问过boolDFS_check(intx,inty=-1){if(visit[x])returnfalse;visit[x]=true;inti;for(i=0;i<N;i++)if(edge[x][i]&&i!=y)if(visit[i])returnfalse;elseif(!DFS_check(i,x))returnfalse;returntrue;}intmain(){intn,m;scanf("%d%d",&n,&m);memset(edge,false,sizeof(edge)); inti,x,y;for(i=0;i<m;i++){scanf("%d%d",&x,&y);edge[x-1][y-1]=true;edge[y-1][x-1]=true;}memset(visit,false,sizeof(visit)); boolresult=DFS_check(0);if(result)for(i=0;i<n;i++)if(!visit[i])result=false;if(result)printf("Yes!\n");elseprintf("No!\n");system("pause");return0;}6.老鼠奶酪#include<iostream> usingnamespacestd;intisPath(int**grid,intm,intn); struct_TraversedNode{intx;inty;_TraversedNode*next;};struct_Node{intx;inty;};intmain(intargc,constchar*argv[]){int**grid=newint*[8];for(inti=0;i<8;i++){grid[i]=newint[8];}grid[0][0]=1;grid[0][1]=1;grid[0][2]=0;grid[0][3]=0;gri d[0][4]=0;grid[0][5]=0;grid[0][6]=0;grid[0][7]=1;grid[1][0]=1;grid[1][1]=1;grid[1][2]=1;grid[1][3]=1;gri d[1][4]=1;grid[1][5]=1;grid[1][6]=1;grid[1][7]=1;grid[2][0]=1;grid[2][1]=0;grid[2][2]=0;grid[2][3]=0;gri d[2][4]=1;grid[2][5]=0;grid[2][6]=0;grid[2][7]=1;grid[3][0]=1;grid[3][1]=1;grid[3][2]=1;grid[3][3]=0;gri d[3][4]=1;grid[3][5]=0;grid[3][6]=0;grid[3][7]=1;grid[4][0]=0;grid[4][1]=1;grid[4][2]=0;grid[4][3]=0;gri d[4][4]=1;grid[4][5]=1;grid[4][6]=1;grid[4][7]=1;grid[5][0]=0;grid[5][1]=1;grid[5][2]=0;grid[5][3]=0;gri d[5][4]=0;grid[5][5]=0;grid[5][6]=0;grid[5][7]=1;grid[6][0]=0;grid[6][1]=1;grid[6][2]=0;grid[6][3]=9;gri d[6][4]=1;grid[6][5]=1;grid[6][6]=1;grid[6][7]=1;grid[7][0]=0;grid[7][1]=1;grid[7][2]=1;grid[7][3]=1;gri d[7][4]=0;grid[7][5]=0;grid[7][6]=1;grid[7][7]=0;for(inti=0;i<8;i++){for(intj=0;j<8;j++)cout<<grid[i][j]<<"";;cout<<endl;}returnisPath(grid,8,8);}intisPath(int**grid,intm,intn)if(grid[0][0]==0)return0;if(grid[0][0]==9)return1;intstep=0;boolflag_down_success=true;boolflag_up_success=true;boolflag_left_success=true;boolflag_right_success=true;_TraversedNode*p=NULL;_TraversedNode*p_check=NULL;_TraversedNode*head=NULL;_TraversedNode*TraversedNode=new_TraversedNode; TraversedNode->x=0;TraversedNode->y=0;head=TraversedNode;p=TraversedNode;p->next=NULL;intcount_node=0;intnum_node=1;_Node*node=new_Node[n+m];_Node*node_next=new_Node[n+m];node[0].x=0;node[0].y=0;while(1)for(inti=0;i<num_node;i++){if(node[i].x+1<=m-1){if(grid[node[i].x+1][node[i].y]!=0){if(grid[node[i].x+1][node[i].y]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x+1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_down_success=false;}else{p_check=p_check->next;}if(flag_down_success){TraversedNode=new_TraversedNode; TraversedNode->x=node[i].x+1; TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x+1; node_next[count_node].y=node[i].y; count_node++;}flag_down_success=true;}}if(node[i].x-1>=0){if(grid[node[i].x-1][node[i].y]!=0) {if(grid[node[i].x-1][node[i].y]==9) {step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x-1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_up_success=false;}else{p_check=p_check->next;}}if(flag_up_success){TraversedNode=new_TraversedNode;TraversedNode->x=node[i].x-1;TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x-1;node_next[count_node].y=node[i].y;count_node++;}flag_up_success=true;}}if(node[i].y+1<=n-1){if(grid[node[i].x][node[i].y+1]!=0){if(grid[node[i].x][node[i].y+1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y+1)) {p_check=NULL;flag_right_success=false;}else{p_check=p_check->next;}}if(flag_right_success){TraversedNode=new_TraversedNode; TraversedNode->x=node[i].x; TraversedNode->y=node[i].y+1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y+1; count_node++;}flag_right_success=true;}}if(node[i].y-1>=0){if(grid[node[i].x][node[i].y-1]!=0){if(grid[node[i].x][node[i].y-1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y-1)) {p_check=NULL;flag_left_success=false;}else{p_check=p_check->next;}}if(flag_left_success){TraversedNode=new_TraversedNode;TraversedNode->x=node[i].x;TraversedNode->y=node[i].y-1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y-1; count_node++;}flag_left_success=true;}}}if(count_node==0){cout<<"不存在到达终点的路径"<<endl; return0;break;}step++;num_node=count_node;count_node=0;for(inti=0;i<num_node;i++){node[i].x=node_next[i].x;node[i].y=node_next[i].y;cout<<"("<<node[i].x<<","<<node[i].y<<")";}cout<<endl;}}7.格雷码public?static?int?gray(byte?term1,byte?term2){ int?n=0;for(int?i=0;i<8;i++){byte?t1,t2,ch;ch?=?(byte)0x01;t1=term1&ch;t2=term2&ch;if((t1^t2)==ch){n++;}term1=(byte)(term1>>1);term2=(byte)(term>>1);}if(n==1)return?1;elsereturn0;}8.#include<iostream>usingnamespacestd;voidmyPrint(intn){if(1==n){cout<<"1*2"<<endl;return;}intlastnumber=n*(n+1);//每一行最后一个数intfirst=1;//每一行第一个数intnum=1;intstep=n;for(inti=1;i<=n;i++){for(intj=1;j<i;j++)//输出‘-’cout<<'-';num=first;for(intl=0;l<(n-i+1);l++)//每一行的前半部分{cout<<num<<"*";num++;}num=lastnumber-step+1;cout<<num;num++;for(l=0;l<(n-i);l++)//每一行的后半部分{cout<<"*"<<num;num++;}cout<<endl;//修改first和lastnumberfirst=first+step;lastnumber=lastnumber-step;step--;}}intmain(){intn;while(cin>>n){myPrint(n);}return0;}9短作业优先调度算法(SJF)publicclassShortJobFirst{publicstaticvoidmain(String[]args){int[]requestTimes={0,2,4,5};int[]durations={7,4,1,4};floataverageWaitingTime=ShortJobFirst.minWaitingTime(re questTimes,durations);}/****@paramrequestTimes任务提交时间*@paramdurations任务服务时间*@return*/publicstaticfloatminWaitingTime(int[]requestTimes,int[] durations){if(requestTimes==null||durations==null)return-1;if(requestTimes.length!=durations.length)return-1;intn=requestTimes.length;int[]durationTimes=copyArray(durations);//复制一份服务时间int[]startTimes=newint[n];//开始时间int[]endTime=newint[n];//结束时间int[]waitingTime=newint[n];//等待时间int[]cycleTime=newint[n];//周转时间//第一个执行任务的开始时间、结束时间、等待时间startTimes[0]=requestTimes[0];endTime[0]=startTimes[0]+durations[0];waitingTime[0]=0;/**核心代码**/intlastIndex=0;//上一次执行任务的索引intminIndex=0;//最短任务的索引for(inti=1;i<n;i++){minIndex=getMinIndex(durations);//作曲最短任务索引为当前任务startTimes[minIndex]=endTime[lastIndex];//当前任务的开始时间为上一个任务的结束时间endTime[minIndex]=startTimes[minIndex]+durationTimes[mi nIndex];//结束时间=开始时间+服务时间waitingTime[minIndex]=startTimes[minIndex]-requestTimes[minIndex];//等待时间=开始时间-提交时间cycleTime[minIndex]=endTime[minIndex]-requestTimes[minIndex];//周转时间=结束时间-提交时间lastIndex=minIndex;//更新当前任务索引为下一次循环中的“上一次任务索引”}//计算平均等待时间ints=0;for(inti:waitingTime)s+=i;floataverageTime=(float)s/(float)n;returnaverageTime;}//获取最短任务索引,获取完成之后,该任务的服务时间置为最大值,从下一次寻找最短任务的过程中排除。

亚信笔试题正常【可编辑】

亚信笔试题正常【可编辑】

第一部分JAVA语言基础一、选择题1、若所用变量都以正确定义,一下选项中,非法的表达式是CA a!=4||b==1B ‘a’%3C ‘a’=1/2D ‘A’+322、下列语句序列执行后,j的值是A 5B 6C 7D 83、java语言的类间的继承关系是BA 多重的B 单重的C 线程的D 不能继承4、下列定义中,不正确的是 CA class x{…}B class x extends y {…}C static class x implements y1,y2{…}D public class x extends Applet{…}5、定义java Applet程序时,必须有的import语句是AA import java.applet.Applet;B import java.io.*C import java.awt.event;D import ng.*;6、下列方法定义中,不正确的是DA public int x( ){…}B public static int x(double y){…}C void x (double d){…}D public static x (double a){…}7、下列的哪个选项可以正确表达八进制8 CA 0x8B 0x10C 08D 0108、下列关于继承的哪项叙述是正确的CA 在java中允许多重继承B 在java中一个类只能实现一个接口C 在java中一个类不能同时继承一个类和实现一个接口D java的单一继承使代码更可靠字串19、若已定义byte[]x={11,22,33,-66};其中0<=k<=3,则对x数组元素错误的引用时 cA x[5-3]B x[k]C x[k+5]D x[0]10、给出下列代码,如何是成员变量m被方法fun()直接访问 -----成员变量在类中定义,局部变量在方法中定义 CClass test{Private int m;Public static void fun(){…}}A 将private int m 改为 protected int mB 将private int m 改为 public int mC 将private int m 改为 static int mD 将 private int m 改为 int m11、Given: F1 public class Alphal{2 public static void main(String[] args){3 boolean flag; int i=0;1 do{2 flag = false;3 system.out.println(i++);4 flag = 1 < 105 continue;6 }while((flag)?True;false);7 }8 }What is result?A 0000000000B 0123456789C Compilation failsD The code runs with no output.E The code enters an infinite loopF An exception is thrown at runtime e.12、Given() D1 package foo;23 import java.Util.Vector;45 protected class MyVector Vector{6 int i=1;7 public MyVector()8 i=2 ;9 }10 }1112 public class MyNewVector extends MyVector{13 public MyNewVector(){14 i=4;15 }16 public static void main(String args[]){17 MyVector v=new MyNewVector18 }19 }what is the result?()A. Compilation succeedsB. Compilation falis because of an error at line5C. Compilation falis because of an error at line6D. Compilation falis because of an error at line14E. Compilation falis because of an error at line1713、Given:()1 class Super{2 public integer getlength(){3 return new integer(4);}}45 public class Sub extends Super}6 public Long GetLength(){return new Long(5);}78 public static void main(String[] args){9 Super sooper = new Super();10 Sub sub = new Sub();11 System.out.println(12 sooper.getLength().toString()+","+13 sub.getLength().toString() );14 }15 }What is the output?A.4,4B.4,5C.5,4D.5,5pilation fails.14、Given:1 public class Test{2 public static String output=....;34 public static void foo (int){5 try{6 if(i==1){7 throw new Exception();8 }9 output+="2";10 }11 Catch(Exception e){12 OutPut+="1";13 Return;14 }15 Finally{16 Output+="3";17 }18 Output+="4"19 }2021 Public static void main(string args[]){22 Foo(0);23 Foo(1);2425 }26 }What is the value of the variable output at line 23?15、Given:() D1 class Base{2 Base(){System.out.print("Base");}3 }4 public class Alpha extends Base{5 public static void main(String []args){6 new Alpha();7 new Base();8 }9 }What is the result?A. BaseB. Basebasec. Compilation fails.D. The code runs with no output.E. An exception is thrown at runtime.16、Given:1 int l=1,j=-1;2 switch(i){3 case 0,1:j=1;4 case 2;j=2;5 default;j=0;6 }7 System.out.println("j="+j);What is the result?A.j=-1B.j=0C.j=1D.j=2pilation fails.---------------17、Which two are valid declarations within an interface definition?(Choose two)A. void methoda();B. public double methoda();C. public final double methoda();D. static void methoda(double dl);E. Protected void methoda(double dl);18、Which two allow the class Thing to be instantiated using new Thing()?(Choose two)A. public class thing{}B. public class thing{public thing(){}}C. public class thing{public thing(void){}}D. public class thing{public thing(String s){} }E. public class thing{public thing(){} public thing(String s){} }19、Given:1 public class X{2 public static void main(String[] args){3 try{4 badMethod()5 System.out.print(“A”);6 }7 catch (Exception ex){8 System.out.print(“B”);9 }10 Finally{11 System.out.print(“C”);12 }13 System.out.print(“D”);14 }15 public static void badMethod(){16 throw new RuntimeException();17 }18 }What is the result?A.ABB.BCC.ABCD.BCDpilation fails20、 Given:1 class TestA{2 TestB b;3 TestA() {4 b = new testB(this);5 }6 }7 class TestB {8 TestA a;9 TestB(TestA a){10 this.a = a;11 }12 }13 Class TestA11 {14 public static void main (String args[]){15 new TestA11().makeThings();16 //…code continues on17 }18 void makeThings(){19 TestA test = new TestA();20 }21 }Which two statements are true after line 15 before main completes?(Choose two)A.Line 15 causes a stack overflow.B.An exception is thrown at runtime.C.The object referenced by a is eligible for garbage collection.D.The object referenced by b is eligible for garbage collection.E.The object referenced by a is not eligible for garbage collection.F.The object referenced by b is not eligible for garbage collection.二、简答题(共6题,每题5分,共30分)1、java中作用域public,private,protected以及不写时的区别2、列出java中所有基本数据类型,并说明这些数据类型占用的字节数?同时说明基本数据类型和其他类型在使用上的区别?3、请详细阐述static在java中的应用?4、请阐述抽象类、继承、接口的概念及相互关系?5、Try{ }里有一个return语句,那么紧跟在这个try后的finally{ }里的code会不会被执行,什么时候被执行,在return前还是后?6、GC是什么?为什么要有GC。

2021年亚信科技校园招聘笔试真题

2021年亚信科技校园招聘笔试真题

2021 年亚信科技校园招聘笔试真题考试时间 120_分钟 _ 考试方式〔闭〕卷第一局部——JAVA语言根底一、单项选择题〔每题2分,总分16分〕1.以下java标识符,错误的选项是( )。

A _$userNameB $userNameC USER_NAMED 1userName2.三元条件运算符ex1?ex2:ex3,相当于下面( )语句。

A if〔ex1〕 ex3;else ex2;B if〔ex2〕 ex1;else ex3;C if〔ex1〕 ex2;else ex3;D if〔ex3〕 ex2;else ex1;3.以下不属于面向对象编程的三个特征的是( )。

A. 封装B. 指针操作C. 多态性D. 继承4.关于构造方法,以下说法错误的选项是( )。

A. 构造方法不可以进展方法重写B. 构造方法用来初始化该类的一个新的对象C. 构造方法具有和类名一样的名称D. 构造方法不返回任何数据类型5.关于java线程,下面说法错误的选项是( )。

A 线程是以CPU为主体的行为B 新线程一旦被创立,它将自动开场运行C 创立线程的方法有两种:实现Runnable接口和继承Thread类D java利用线程使整个系统成为异步6.在Java中,一个类可同时定义许多同名方法,这些方法的形式参数个数、类型或顺序各不一样,传回的值也可以不同。

这种面向对象程序的特征称为( )。

A 重载B 隐藏C 覆盖D Java不支持该特性7.有以下方法的定义,该方法的返回类型是( )。

ReturnType method(byte x, double y) {return (short)x/y*2;}A、doubleB、intC、shortD、byteE、float8.以下声明中,错误的选项是( )。

A、float f = 1.2;B、float f = 1.2f;C、float f = (float)1.2;D、float f =1;二、填空题〔每题2分,总分14分〕1.我们在java程序中,把关键字____ ____加到方法名称的前面,来实现子类调用父类的方法。

亚信校招笔试题目

亚信校招笔试题目

1.BSTpublicclassBSTMinLength{publicstaticvoidmain(String[]args){TreeNodetNode11=newTreeNode(10,null,null); TreeNodetNode12=newTreeNode(50,null,null); TreeNodetNode13=newTreeNode(5,null,null); TreeNodetNode14=newTreeNode(30,null,null); TreeNodetNode21=newTreeNode(30,tNode11,tNode12); TreeNodetNode22=newTreeNode(30,tNode13,tNode14); TreeNodetNodeRoot=newTreeNode(100,tNode21,tNode22);}privatestaticintminlength(TreeNodetNode){if(tNode!=null){returngetlength(tNode,0);}return-1;}privatestaticintgetlength(TreeNodetNode,intcurLength){ intminLeft=-1;intminRight=-1;if(tNode.leftNode!=null){minLeft=getlength(tNode.leftNode,curLength+tNode.value);}if(tNode.rightNode!=null){minRight=getlength(tNode.rightNode,curLength+tNode.valu e);}if(tNode.leftNode==null&&tNode.rightNode==null){returncurLength+tNode.value;}if(tNode.leftNode==null){returnminRight;}if(tNode.rightNode==null){returnminLeft;}returnminLeft>minRight?minRight:minLeft;}}classTreeNode{intvalue;TreeNodeleftNode;TreeNoderightNode;TreeNode(intvalue,TreeNodelefeNode,TreeNoderightNode){this.value=value;this.leftNode=lefeNode;this.rightNode=rightNode;}}2.lru#include<iostream>usingnamespacestd;intlruCountMiss(intmax_cache_size,int*pages,intlen) {intcount=0;inti,j,k,n;boolflag=false;int*a=newint[max_cache_size];//初始化高速缓存数组for(i=0;i<max_cache_size;i++){a[i]=-1;}for(j=0;j<len;j++){for(i=0;i<max_cache_size;i++){if(pages[j]!=a[i]){continue;}else{break;}}if(i!=max_cache_size){for(k=i;k<max_cache_size;k++) {if(a[k]==-1){flag=true;break;}}if(!flag){for(n=i;n<max_cache_size-1;n++) {a[n]=a[n+1];}a[max_cache_size-1]=pages[j]; }else{flag=false;for(n=i;n<k-1;n++){a[n]=a[n+1];}a[k-1]=pages[j];}}else{count++;for(i=0;i<max_cache_size;i++) {if(a[i]==-1){a[i]=pages[j];flag=true;break;}}if(!flag){for(i=0;i<max_cache_size-1;i++) {a[i]=a[i+1];}a[max_cache_size-1]=pages[j];}elseflag=false;}}returncount;}intmain(){intarr[]={7,0,1,2,0,3,0,4};cout<<lruCountMiss(3,arr,8)<<endl; return0;}3.反转链表lnode*reverse(lnode*head){if(head){lnode*prev=NULL;lnode*curr=head;lnode*next=curr->next;curr->next=prev;while(next!=NULL){prev=curr;curr=next;next=next->next;curr->next=prev;}returncurr;}else{returnhead;}};lnode*reverseLinkedList(lnode*list){ if(list){lnode*ori=list;lnode*half=list;lnode*prev=list;while(list&&half&&half->next){prev=list;list=list->next;half=half->next;if(half){half=half->next;}if(list){prev->next=reverse(list);}returnori;}returnlist;}4.SJFfloatwaitingTimeSJF(int*requestTimes,int*durations,intn ){int*flags=newint[n];floatsums=0;for(inti=0;i<n;i++){flags[i]=-1;}intnowtime=0;for(inti=0;i<n;i++){intcount=0;for(intk=0;k<n;k++){if(count==0){if(requestTimes[k]<=nowtime&&durations[k]>=0){flags[count++]=k;}else{if(durations[k]>=0&&requestTimes[k]<=nowtime){ if(durations[k]<durations[flags[0]]){count=1;flags[0]=k;}elseif(durations[k]==durations[flags[0]]){ flags[count++]=k;}}}}if(count==0){count=1;for(intj=0;j<n;j++){if(durations[j]>=0){flags[0]=j;nowtime=requestTimes[j];}}}intidx=flags[0];intminreq=requestTimes[flags[0]];intmindrus=durations[idx];if(count>1){for(intj=1;j<count;j++){if(requestTimes[flags[j]]<minreq){ minreq=requestTimes[flags[j]];idx=flags[j];}}}sums+=nowtime-requestTimes[idx]; nowtime+=durations[idx];requestTimes[idx]=-1;durations[idx]=-1;}returnsums/n;}5无向连通判断是否为树#include<stdio.h>#include<stdlib.h>#include<string.h>constintN=10000,M=100000;booledge[N][N];//数组记录两点是否存在边boolvisit[N];//标记该节点是否访问过boolDFS_check(intx,inty=-1){if(visit[x])returnfalse;visit[x]=true;inti;for(i=0;i<N;i++)if(edge[x][i]&&i!=y)if(visit[i])returnfalse;elseif(!DFS_check(i,x))returnfalse;returntrue;}intmain(){intn,m;scanf("%d%d",&n,&m);memset(edge,false,sizeof(edge)); inti,x,y;for(i=0;i<m;i++){scanf("%d%d",&x,&y);edge[x-1][y-1]=true;edge[y-1][x-1]=true;}memset(visit,false,sizeof(visit)); boolresult=DFS_check(0);if(result)for(i=0;i<n;i++)if(!visit[i])result=false;if(result)printf("Yes!\n");elseprintf("No!\n");system("pause");return0;}6.老鼠奶酪#include<iostream> usingnamespacestd;intisPath(int**grid,intm,intn); struct_TraversedNode{intx;inty;_TraversedNode*next;};struct_Node{intx;inty;};intmain(intargc,constchar*argv[]){int**grid=newint*[8];for(inti=0;i<8;i++){grid[i]=newint[8];}grid[0][0]=1;grid[0][1]=1;grid[0][2]=0;grid[0][3]=0;gri d[0][4]=0;grid[0][5]=0;grid[0][6]=0;grid[0][7]=1;grid[1][0]=1;grid[1][1]=1;grid[1][2]=1;grid[1][3]=1;gri d[1][4]=1;grid[1][5]=1;grid[1][6]=1;grid[1][7]=1;grid[2][0]=1;grid[2][1]=0;grid[2][2]=0;grid[2][3]=0;gri d[2][4]=1;grid[2][5]=0;grid[2][6]=0;grid[2][7]=1;grid[3][0]=1;grid[3][1]=1;grid[3][2]=1;grid[3][3]=0;gri d[3][4]=1;grid[3][5]=0;grid[3][6]=0;grid[3][7]=1;grid[4][0]=0;grid[4][1]=1;grid[4][2]=0;grid[4][3]=0;gri d[4][4]=1;grid[4][5]=1;grid[4][6]=1;grid[4][7]=1;grid[5][0]=0;grid[5][1]=1;grid[5][2]=0;grid[5][3]=0;gri d[5][4]=0;grid[5][5]=0;grid[5][6]=0;grid[5][7]=1;grid[6][0]=0;grid[6][1]=1;grid[6][2]=0;grid[6][3]=9;gri d[6][4]=1;grid[6][5]=1;grid[6][6]=1;grid[6][7]=1;grid[7][0]=0;grid[7][1]=1;grid[7][2]=1;grid[7][3]=1;gri d[7][4]=0;grid[7][5]=0;grid[7][6]=1;grid[7][7]=0;for(inti=0;i<8;i++){for(intj=0;j<8;j++)cout<<grid[i][j]<<"";;cout<<endl;}returnisPath(grid,8,8);}intisPath(int**grid,intm,intn)if(grid[0][0]==0)return0;if(grid[0][0]==9)return1;intstep=0;boolflag_down_success=true;boolflag_up_success=true;boolflag_left_success=true;boolflag_right_success=true;_TraversedNode*p=NULL;_TraversedNode*p_check=NULL;_TraversedNode*head=NULL;_TraversedNode*TraversedNode=new_TraversedNode; TraversedNode->x=0;TraversedNode->y=0;head=TraversedNode;p=TraversedNode;p->next=NULL;intcount_node=0;intnum_node=1;_Node*node=new_Node[n+m];_Node*node_next=new_Node[n+m];node[0].x=0;node[0].y=0;while(1)for(inti=0;i<num_node;i++){if(node[i].x+1<=m-1){if(grid[node[i].x+1][node[i].y]!=0){if(grid[node[i].x+1][node[i].y]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x+1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_down_success=false;}else{p_check=p_check->next;}if(flag_down_success){TraversedNode=new_TraversedNode; TraversedNode->x=node[i].x+1; TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x+1; node_next[count_node].y=node[i].y; count_node++;}flag_down_success=true;}}if(node[i].x-1>=0){if(grid[node[i].x-1][node[i].y]!=0) {if(grid[node[i].x-1][node[i].y]==9) {step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x-1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_up_success=false;}else{p_check=p_check->next;}}if(flag_up_success){TraversedNode=new_TraversedNode;TraversedNode->x=node[i].x-1;TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x-1;node_next[count_node].y=node[i].y;count_node++;}flag_up_success=true;}}if(node[i].y+1<=n-1){if(grid[node[i].x][node[i].y+1]!=0){if(grid[node[i].x][node[i].y+1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y+1)) {p_check=NULL;flag_right_success=false;}else{p_check=p_check->next;}}if(flag_right_success){TraversedNode=new_TraversedNode; TraversedNode->x=node[i].x; TraversedNode->y=node[i].y+1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y+1; count_node++;}flag_right_success=true;}}if(node[i].y-1>=0){if(grid[node[i].x][node[i].y-1]!=0){if(grid[node[i].x][node[i].y-1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y-1)) {p_check=NULL;flag_left_success=false;}else{p_check=p_check->next;}}if(flag_left_success){TraversedNode=new_TraversedNode;TraversedNode->x=node[i].x;TraversedNode->y=node[i].y-1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y-1; count_node++;}flag_left_success=true;}}}if(count_node==0){cout<<"不存在到达终点的路径"<<endl; return0;break;}step++;num_node=count_node;count_node=0;for(inti=0;i<num_node;i++){node[i].x=node_next[i].x;node[i].y=node_next[i].y;cout<<"("<<node[i].x<<","<<node[i].y<<")";}cout<<endl;}}7.格雷码public?static?int?gray(byte?term1,byte?term2){ int?n=0;for(int?i=0;i<8;i++){byte?t1,t2,ch;ch?=?(byte)0x01;t1=term1&ch;t2=term2&ch;if((t1^t2)==ch){n++;}term1=(byte)(term1>>1);term2=(byte)(term>>1);}if(n==1)return?1;elsereturn0;}8.#include<iostream>usingnamespacestd;voidmyPrint(intn){if(1==n){cout<<"1*2"<<endl;return;}intlastnumber=n*(n+1);//每一行最后一个数intfirst=1;//每一行第一个数intnum=1;intstep=n;for(inti=1;i<=n;i++){for(intj=1;j<i;j++)//输出‘-’cout<<'-';num=first;for(intl=0;l<(n-i+1);l++)//每一行的前半部分{cout<<num<<"*";num++;}num=lastnumber-step+1;cout<<num;num++;for(l=0;l<(n-i);l++)//每一行的后半部分{cout<<"*"<<num;num++;}cout<<endl;//修改first和lastnumberfirst=first+step;lastnumber=lastnumber-step;step--;}}intmain(){intn;while(cin>>n){myPrint(n);}return0;}9短作业优先调度算法(SJF)publicclassShortJobFirst{publicstaticvoidmain(String[]args){int[]requestTimes={0,2,4,5};int[]durations={7,4,1,4};floataverageWaitingTime=ShortJobFirst.minWaitingTime(re questTimes,durations);}/****@paramrequestTimes任务提交时间*@paramdurations任务服务时间*@return*/publicstaticfloatminWaitingTime(int[]requestTimes,int[] durations){if(requestTimes==null||durations==null)return-1;if(requestTimes.length!=durations.length)return-1;intn=requestTimes.length;int[]durationTimes=copyArray(durations);//复制一份服务时间int[]startTimes=newint[n];//开始时间int[]endTime=newint[n];//结束时间int[]waitingTime=newint[n];//等待时间int[]cycleTime=newint[n];//周转时间//第一个执行任务的开始时间、结束时间、等待时间startTimes[0]=requestTimes[0];endTime[0]=startTimes[0]+durations[0];waitingTime[0]=0;/**核心代码**/intlastIndex=0;//上一次执行任务的索引intminIndex=0;//最短任务的索引for(inti=1;i<n;i++){minIndex=getMinIndex(durations);//作曲最短任务索引为当前任务startTimes[minIndex]=endTime[lastIndex];//当前任务的开始时间为上一个任务的结束时间endTime[minIndex]=startTimes[minIndex]+durationTimes[mi nIndex];//结束时间=开始时间+服务时间waitingTime[minIndex]=startTimes[minIndex]-requestTimes[minIndex];//等待时间=开始时间-提交时间cycleTime[minIndex]=endTime[minIndex]-requestTimes[minIndex];//周转时间=结束时间-提交时间lastIndex=minIndex;//更新当前任务索引为下一次循环中的“上一次任务索引”}//计算平均等待时间ints=0;for(inti:waitingTime)s+=i;floataverageTime=(float)s/(float)n;returnaverageTime;}//获取最短任务索引,获取完成之后,该任务的服务时间置为最大值,从下一次寻找最短任务的过程中排除。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

亚信笔试题B卷以及答案WEIHUA system office room 【WEIHUA 16H-WEIHUA WEIHUA8Q8-亚信联创科技校园招聘B卷考试时间 60_分钟 _ 考试方式(闭)卷第一部分——计算机基础一、选择题(每题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、1111117.80486型号的微处理器能同时处理的二进制位数是(C )位。

A、8B、16C、32D、648.下面关于串的的叙述中,哪一个是不正确的(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###G0123B.ABCD###2345C.ABC###G1234D.ABCD###123410.设有两个串p 和q,其中q 是p 的子串,求q 在p 中首次出现的位置的算法称为(C )A.求子串 B.联接 C.匹配 D.求串长11. 下列字符中,ASCII码值最大的是 ( D )。

A.空格 B.M C.8 D.m12.下列叙述中,正确的是 ( A )。

A.内存中存放的是当前正在执行的应用程序和所需的数据B.内存中存放的是当前暂时不用的程序和数据C.外存中存放的是当前正在执行的程序和所需的数据D.内存中只能存放指令13.能直接与CPU交换信息的存储器的是 ( C )。

A.硬盘存储器 B.CD-ROMC.内存储器 D.软盘存储器14.一个汉字的国际码需用 ( B )。

A.1个字节 B.2个字节 C.3个字节 D.4个字节15.执行下列二进制算术加法运算:01010100+,其运算结果是 ( A )。

A. B.C.00010000 D.16.二进制数110101转换为八进制数是 ( B )。

A.71 B.65 C.56 D.5117.操作系统中采用缓冲技术的目的是为了增强系统 ( 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)public B)protected C)private D)static2、C类的析构函数是在什么时候调用的A)类创建时 B)创建对象时 C)删除对象时 D)不自动调用3、B在位运算中,操作数每右移一位,其结果相当于A)操作数乘以2B)操作数除以2C)操作数乘以4D)操作数除以44、A下列语句中不是死循环的是A)int i=10;B)for( int i=1;i<10;i++)while(1) {} i--;i--;}if(i= =1)break;}C)int i=0;D)int i=1;do{ for(;;)i=i+1;i++;}while(i>=0):5、B下列描述正确的是A)表示m>n为true或m<n为true的表达式为m>n&&m<nB)switch语句结构中必须有default语句C)if语句结构中必须有else语句D)如果至少有一个操作数为true,则包含“‖”运算符的表达式为true6、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执行语句序列int n;cin>>n;switch(n){case 1:case 2: cout<<'X';case 3:case 4: cout<<'Y'; break;default:cout<<'Z'; }时,不可能出现的情况是:A) 显示:XB) 显示:YC) 显示:ZD) 显示:XY9、D有如下两行定义,此写法产生于某一项目组,从实践的角度出发,并不能评价好或不好,但从中可以得到启示,我们需要更注意编码规范,以下哪种说法相较不太可取:char EndDate[8+1]; _str());return NORMAL;}A) m_infoPoint获得了infoPoint的地址B) m_infoPoint获得了infoPoint的地址的地址C) m_infoPoint获得了infoPoint的值D) m_infoPoint获得了infoPoint的值的值18、下面为不正确的字符串赋值或赋值方式是A)char *str; str = ”string”;B)char str[7] = {’s’,’t’,’r’,’i’,’n’,’g’};C)char str1[10]; str1=”string”;D)char str1[] = ”string”,str2[] = ”12345678”; strcpy(str2,str1);19、下面函数的功能是int fun(char *x){char *y=x;while (*y++);return(y-x-1);}A)求字符串的长度B)比较两个字符串的大小C)将字符串x复制到字符串yD)将字符串x连接到字符串y后面20、现有某多线程程序如下:#include <iostream>#include <>using namespace std;pthread_t ntid;static long lData = 0;static bool bFlag = false;static void *thr_fn(void *arg){while(1){sleep(1);if(bFlag){cout<<"current data is:"<<lData<<endl; }bFlag = false;}return((void *)0);}int main(void){int err;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设有定义语句int a[]={66,88,99}; 则以下对此语句的叙述错误的是A) 定义了一个名为a的一维数组 B) a数组有3个元素C) a数组的下标为1~3 D)数组中的每个元素是整型2、B在计算机中,数值数据一般采用()形式存储A.原码 B.补码 C.反码 D.真值3、A为了区分重载多态中同名的不同方法,要求A) 采用不同的形式参数列表 B) 返回值类型不同C) 调用时用类名或对象名做前缀 D) 参数名不同4、CJava程序经常用到“递归”,“递归”的基本思想是A.让别人反复调用自己B.自己反复调用被人C.自己反复调用自己D.以上都不对5、C下列选项中,用于在定义子类时声明父类名的关键字是A)interface B) package C) extends D) class6、C在Java中,一个类可同时定义许多同名方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不同。

这种面向对象程序的特征称为A.隐藏B.覆盖C.重载D.Java不支持该特性C7、设 a, b, c, d 均为 int 型的变量,并已赋值,下列表达式的结果属于非逻辑值的是A) a!=b & c%d < a B) a++ = =a+b+c+dC) ++a*b--+d D) a+b>=c+d8、关于以下程序段,正确的说法是1. String s1=”a”+”b”;2. String s2=new String(s1);3. if(s1==s2)4. is succeeded”);5. if(s2))6. is succeeded”);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 + b10、执行语句 int i=1; j=++i;后,i与j的值分别是A.1与1B.2与1C.1与2D.2与211、Given:1. public class Delta {2. static boolean foo(char c) {3. return true;5. }6. public static void main( String[] argv ) {7. int i =0;8. for ( foo(‘A’); foo(‘B’)&&(i<2); foo(‘C’)){9. i++ ;10. foo(‘D’);12. }13. }14. }What is the result?A. ABDCBDCBB. ABCDABCDC. Compilation fails.D. An exception is thrown at runtime.12、B哪种说法阐明Java内存回收机制请选出正确的答案。

相关文档
最新文档