中国工商银行软件开发中心上海研发部面试题
题目1:编号为123456789的火车经过如下轨道从左边入口处移到右边出口处(每车只能进临时轨道M一次)
按照从左向右的顺序,下面的结果不可能是______
A 123876549
B 321987654
C 321456798
D 789651234
题目2:如果M只能容纳4列车。上面选项因该选哪个______
题目3:3 3 8 8用四则运算符得出24
题目4:C#编程实现:可变长有序数组的插入(无重复数据节点)
题目5:数a和b,如何空间消耗最小交换a b中的数
题目6:For the following description about OOP, which is right?
1 An object can inherit the feature of another object;
2 A sub class can contain dditional attribute or behaviors.
3 Encapsulation is used to hide as MUCH as possible about the inner working of the interface.
4 Encapsulation prevents the program from becoming independent
5 polymorphism allows the methods have different signature but with same name.
A 12
B 14
C 23
D 35
E 45
题目7:Function club is used to simulate guest in a club. With 0 guests initially
and 50 as max occupancy, when guests beyond limitation, they need to wait outside;
when some guests leave the waiting list will decrease. The function will print out
number of guests in the club and waiting outside. The function declaration as follows:
void club(int x);
positive x stands for guests arrived, nagative x stands for guests left from
within the club
For example, club (40) prints 40,0; and then club (20) prints 50,10; and then club (-5) prints 50,5; and then club (-30) prints 25,0; and then club (-30) prints N/A; since it is impossible input.
To make sure this function works as defined, we have following set of data to pass into
the function and check the result are correct.
a 60
b 20 50 -10
c 40 -30
d 60 -5 -10 -10 10
e 10 -20
f 30 10 10 10 -60
g 10 10 10
h 10 -10 10
A a d e g
B c d f g
C a c d h
D b d g h
E c d e f
题目8、职工ID 岗位ID 排序号
WorkerID JobID iSort
19 101 1
19 702 2
19 702 3
19 501 4
20 702 1
25 101 2
现在要计算出某一岗位的人数,一人兼多个岗位时,按一人计算,只取iSort最低的那个,
如WorkerID=19,只取iSort=1的
上表结果:
岗位ID 人数
JobID num
101 2 即职工ID为19和25的两人
702 1 即职工ID为20
501 0
sql 如何实现?
9、在0-13内随机生成7个数字,要求如下:0可以出现多次,其他数字只能出现一次,比如0,3,5,7,1,0,10等,并对生成的该组数字判断,要求如下:数组内数字0可以替换0-13内的任何数字,如果被该数组内能形成5个连续的数字,则正确,否则不正确;
10、考试模块设计
1. 目标
主要是用来做一些简单的问答考试用,可以从数据库读取题目并生成试卷,可以设置考试时间,并在试卷中显示时间倒数;考题填完后根据一定的评分规则生成结果;管理员可以查看所有考生的成绩,考生只可以查询自己考试的成绩;
2. 设计要求
由于只是简单的问答考试,后台可以进行简单的查询成绩,暂可不做其它的上传题等操作,界面可参考以下图片
3. 代码设计要求
1) 可以先定义静态的一个用户ID用做测试,如 :
string sUserID = “User1”;
2) 要求用到的数据库操作类为 SQLServerUniversal 用法如下
SQLServerUniversal db = new SQLServerUniversal();
/// <summary>
/// 根据类型判断是否有版主信息
/// </summary>
/// <param name= "typeid "> </param>
/// <returns> </returns>
public bool IsShowTeamMaster(string p_sTypeID)
{
bool bResult = false;
DataSet ds;
if(p_sTypeID == " ")
{
p_sTypeID = "0 ";
}
strSQL = string.Format( "select typeid from t_newtypes where isteam=1 and typeid={0} ",p_sTypeID);
ds = db.ExecQuery(strSQL);
if (ds.Tables[0].Rows.Count > 0)
{
bResult = true;
}
return bResult;
}
3) ….
4. 数据库设计
表名: T_ExamName (试题名称)
字段名 类型 主键 描述
ID Int IDENTITY (1, 1) NOT NULL 是 试题名称ID
ExamName Nvarchar(256) 试题名称
ExamLimitTime int 考试限制时间
表名: T_ExamSubject (考试题目)
字段名 类型 主键 描述
ID Int IDENTITY (1, 1) NOT NULL 是 题目名称ID
FK_ExamNameID Int 试题名称ID
SubjectName Nvarchar(512) 题目名称
Point int 该题目的分数
表名: T_ExamSubjectAnswer (考试答案选项)
字段名 类型 主键 描述
ID Int IDENTITY (1, 1) NOT NULL 是 答案ID
FK_ExamSubjectID Int 题目名称ID
Answer Nvarchar(512) 答案
IsTrue int 是否是正解
表名: T_ExamUserInfo (用户考试情况)
字段名 类型 主键 描述
ID Int IDENTITY (1, 1) NOT NULL 是 考生考试答案ID
FK_ExamNameID Int 试题名称ID
FK_UserID int 用户ID
ExamTime int 参加考试时间
表名: T_ExamUserAnswer (用户考试答案)
字段名 类型 主键 描述
ID Int IDENTITY (1, 1) NOT NULL 是 考生考试答案ID
FK_ExamUserInfoID Int 用户考试ID
FK_ExamSubjectID int 题目名称ID
FK_ExamSubjectAnswerID int 答案ID
注:如果是多选的,就在该表(T_ExamUserAnswer)中插入所选的多条记录,如选择对于考试1的题目3选择了A,C,D三行,则在该表中就会有三条这样的记录,如:
1 1 3 1
2 1 3 3
3 1 3 4
5. 新建内容要求
表建的类放到class里,页面文件放到Exam目录下
11.TCP协议建立连接要三次握手,那么释放连接要几次?
12.一台主机每天要向一台服务器传送100M数据,请设计三套方案.分别对应经济性最好,效率最高,安全性最好