2018秋招科大讯飞技术岗笔试题
一、选择题
关于视图的说法中正确的是
A 对视图使用与表一样,也可以进行插,查,删,改操作
B 可以根据数据库表和自由表建立视图
C 视图与表一样,也存储着数据
D 对视图的操作,是最终都要转化成对基本表的操作
( )是调用者发出消息后,必须等待消息处理结束返回后,才能进行后续操作
A 简单消息
B 异步消息
C 同步消息
D 返回消息
咖啡店销售系统具体需求为:咖啡店店员在卖咖啡时,可以根据顾客的要求加入各种配料,并根据配料价格的不同来计算总价,若要设计该系统可以应该采用( )进行设计
A 单例模式
B 装饰模式
C 原型模式
D 组合模式
下列等价类的叙述中正确的是
A 若输入条件规定了取值的上下限,则可以确定一个有效等价类和两个无效等价类
B 若输入条件为一个布尔变量,则可以确定一个有效等待类和一个无效等价类
C 若输入条件规定了“必须如何”的条件,则可以确定一个有效等价类和两个无效等价类
D若输入条件为一个逻辑量,则可为每个输入值确定一个有效等价类,并针对这组值确定一个无效等价类
对static使用描述正确的是
A 在模块内的static函数只可被这一模块内的其他函数调用。这个函数的使用范围被限制在声明它的模块内
B 函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,一次其值在下次被调用时仍维持上次的值
C 在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其他函数访问。
D static变量存储在堆上
假设下列字符码中有奇偶校验位,但没有数据错误。采用偶校验的字符码是( )
A 11001011
B 11001001
C 11010110
D 11000001
下面的存储过程实现用户验证的功能,。如果不成功,返回0,成功则返回1.
CREATE PROCEDURE VALIDATE @USERNAME CHAR,@PASSWORD CHAR,@LEGAL BIT OUTPUT AS IF EXISTS(SELECT * FROM WHERE SNAME=@USERNAME AND PWD=@PASSWORD)SELECT @LEGAL=1 ELSE SELECT @LEGAL=0
该用户的用户名和密码分别是’Tom’和’123’,执行该存储过程语句和结果正确的是AD
A declare @LEFA bit
Exec dbo.validate ‘Tom’,’123’,@LEGAL OUTPUT
SELECT @LEGAL
结果为1
B declare @LEFA bit
Exec dbo.validate ‘Tom’,’123’,@LEGAL OUTPUT
SELECT @LEGAL
结果为0
C declare @LEFA bit
Exec dbo.validate ‘TomCat’,’123’,@LEGAL OUTPUT
SELECT @LEGAL
结果为1
D declare @LEFA bit
Exec dbo.validate ‘TomCat’,’123’,@LEGAL OUTPUT
SELECT @LEGAL
结果为0
下面关二叉排序树的说法错误的是A
A 在二叉排序树种,完全二叉树的查找效率最低
B 对二叉排序树进行中序遍历,必定得到节点关键字的有序序列
C 二叉排序树的查找效率与二叉树的树形有关
D 二叉排序树的平均查找长度是O(Log 2n)
TCP套接字函数中(D)不会产生阻塞
A read
B write
C accept
D bind
有关单例模式的说法中正确的是
A 用户无法通过new方式实例化单例类
B 违背了单一职责原则
C 单例模式用于多线程应用程序
D 单例模式属于创建型模式
有max和PrinteStar的函数原型如下:
Int max(int a,int b);
Void printStar();
则以下对这两个函数的调用均正确的是(设变量均已定义)( )
A cout<<max(x,y)
Cout<<printStar();
B max
printStar;
C max(20,10)
printStar()
D z=max(x,y)
Z=printStar()
一个上下文无关文法一般是由一组非终结符号,一组终结符号,一个开始符号和一组产生式构成,那么产生式是用于定义( )的一种规则
A 词法成分
B 逻辑推理
C 语义成分
D 语法成分
下列const使用方法不正确的是
A int *const x;
B const int cnst *x
C const int *x
D int const *x
下列各序列中不是堆的是
A {9,4,5,8,3,1,2}
B{9,8,5,3,4,2,1}
C {9,8,5,4,3,1,2}
D {9,5,8,4,3,2,1}
在FTP服务器上FTP主进程打开的端口号
A 22
B 20
C 21
D 23
以下程序运行后的输出结果是
A 3
B 2
C 4
D 1
多线程与多进程的主要区别之一就是共享资源,多线程是通过互斥访问来协调共享资源的,在windows系统中使用什么对象使多线程之间对资源互斥访问
A SysThread
B initThread
C Mutex
D Select
在一个请求分页系统中,采用NUR页面置换算法时,假如一个作业的页面走向为1,2,2,5,4,2,4,3,2,4.当分配给该作业的物理块数为3时,访问过程中命中次数是
A 6
B 4
C 3
D 5
Spring有哪三个核心组件
A Context
B Core
C Beans
D IOS
关于c++异常处理机制描述正确的是
A 一个try-catch语句中只能有一个try语句和一个catch语句
B 一个函数可以只有try语句块,没有catch语句块
C try-catch语句可以与throw不在同一个函数
D 如果throw抛出的异常找不到与之匹配的catch语句,会终止程序的运行
下列代码执行后的结果是
A 21
B 20
C 31
D 15
可唯一确定一颗二叉树的是
A 给定一颗二叉树的先序和后序遍历序列
B 给定一颗二叉树的后序和中序遍历序列
C 给定先序,中序和后序遍历序列中的任意一个即可
D 给定一颗二叉树的先序和中序遍历序列
25、在UML中,( )体现了一种contains-a的关系
A 关联关系
B 聚合关系
C 实现关系
D 组合关系
以下程序在64系统中,输出结果为
A 100
B 4
C 8
D 200
下面那些是使用分治法的前提条件
A 子问题必须是一样的
B 原问题和子问题求解方法相同
C 子问题之间不包含公共的子问题
D 该问题具有最优子子结构性质
现有如下代码段
假设n>=0,则其时间负责度应为
A O(nlog2n)
B O(n^2)
C O(log2n)
D O(n)
解决哈希冲突的链地址算法中,关于插入新的数据项的时间表述正确的是
A 和链表数目成正比
B 随装填因子线性增长
C 和哈希表中项数成正比
D 和数组已占用单元的百分比成正比
设有定义int a[3][4]={1,2,3,4,5,6,7,8,9,10},(*p)[4]=a,*q[3]={a[0],a[1],a[2]},**r=q;以下值部位9的表达式是
A **(r+8)
B *(p[1]+4)
C **(a+2)
D *q[2]
二、编程
1.有 n 个人排成了一行队列,每个人都有一个站立的方向:面向左或面向右。由于这 n 个人中每个人都很讨厌其他的人,所以当两个人面对面站立时,他们会发生争吵,然后其中一个人就会被踢出队列,谁被踢出队列都是有可能的。
我们用字符 L 来表示一个面向左站立的人,用字符 R 来表示一个面向右站立的人,那么这个队列可以用一个字符串描述。比如 RLLR 就表示一个四个人的队列,其中第一个人和第二个人是面对面站立的。他们发生争吵后队列可能会变成 LLR,也可能变成 RLR;若变成 RLR,则第一个人与第二个人还会发生争吵,队列会进一步变成 LR 或者 RR。
若在某个时刻同时可能有很多的争吵会发生时,接下来只会发生其中的一个,且任意一个都是有可能发生的。
你想知道经过一系列的争吵后,这个队列最少会剩下多少人?
输入
第一行包含一个有字符 L 和 R 构成的字符串。
1 ≤字符串长度≤ 105
输出
输出队列中最少会剩下多少人。
样例输入
LRRLRL
样例输出
2
Hint
一种可能的变化情况是这样的:
LRRLRL -> LRLRL -> LRRL -> LRL -> LR
2.小明是一名学生,又到了学校的选课时间,他想选一些课程学习,已知课程开课时间都在每周一到周五之内,早上4讲课,下午4讲课,晚上2讲课。
小明担心选课时间上有所冲突。所以他希望可以对课程时间进行检查。
输入
首先输入一个整数n(0<n<=100),表示小明选课总数。
之后输入n行选课信息,每行选课信息有2个数字。
第一个数字表示开课时间,开课时间用2位数表示,前一位用0到4表示周一至周五,后一位用0到9表示从早到晚顺序第几讲课,如12表示礼拜二第三讲课。01表示礼拜一第二讲课。
每行第二个数字表示课程代码,如:204521。课程代码为6位数字。输入课程代码均不重复。
输出
如果没有冲突课程,输出YES。
如果有冲突课程,也就是同一个时间多于一节课,输出所有冲突的课程。输出有多行,如果多个不同的上课时间都有课程冲突,按照周一到周五,早上到晚上时间先后,按行输出冲突信息。在同一行内,先输出冲突时间,之后输出这一时间的所有课程,输出课程的顺序为输入中这些课程出现的顺序,课程之间以空格分隔,不要在行末输出多余的空格。
样例输入
5
01 204521
23 204523
22 204526
01 204528
22 204527
样例输出
01 204521 204528
22 204526 204527
Hint
Input Sample 2
3
11 204521
23 204522
43 204531
Output Sample 2
YES
协会对比赛的规则进行了调整,以便使得比赛更具有观赏性。
1. 总决赛的参赛队伍为n支,n为偶数;
2. 进入前1/2的队伍才有资格进入淘汰赛;
3. 队伍按积分排名,具体规则为:胜一场积3分;平一场积1分;负一场积0分。队伍首先按积分降序排列,积分相同按净胜球数降序排列,仍然相同的按进球数降序排列。
4. 基于上述规则,尚未出现有排名歧义的情况发生。
随着赛程的进行,目前各个队伍对战的结果已经确定了,小B负责确定进入淘汰赛的名单,她向你求助,你能帮她吗?
输入
测试数据有多组,每组测试数据的第一行为一个整数n(1=< n <=50),为参与总决赛的球队数,随后的n行为球队的名字,由不超过30个的大小写拉丁字母构成。随后的n*(n-1)/2行为赛事的开展情况,每行的格式为name1-name2 num1:num2,表示两支队伍的比分情况(0=<num1, num2<=100)。确保不会有两支队伍同名,也不会出现队伍自己通自己比赛的情况,且每场比赛仅出现一次。
输出
对每组测试数据,输出n/2行,为按字母序排列的进入淘汰赛的n/2支队伍的名单,每个名字在单独的行中输出。
样例输入
4
A
B
C
D
A-B 1:1
A-C 2:2
A-D 1:0
B-C 1:0
B-D 0:3
C-D 0:3
2
a
A
a-A 2:1
样例输出
A
D
a
#秋招##科大讯飞##笔试题目##C/C++#