京东 2017 校招技术类客观题

一、选择题

1.若某典型基准测试程序在机器 A 上运行时需要 20s,而在机器B 上运行时需要25s,那么,下列给出的结论正确的

是( )

A. 所有程序在机器A 上都比在机器 B 上运行速度快

B. 机器 B 的平均CPI是机器A 的1.25 倍

C. 机器 A 的平均CPI是机器B 的1.25 倍

D. 以上结论都不对

2.设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(用补码表示),若 CPU每当从

存储器取出一个字节时,即自动完成(PC)+1→PC。设当前 PC的内容为 2009H,要求转移到 2000H 地址,则该转

移指令的第二字节的内容是( )

A. F5H

B. F6H

C. F7H

D. 09H

3.某省考试管理系统欲新增部分功能,通过输入课程编号,能够显示该科目历年各分数段的地区分布情况。为了实

现代码重用,即能够重复使用已经存在的数据访问组件。可以做以下考虑: ( )

A. 通过一个过滤器表达式来设置新创建的 DataView 对象的 RowStateFilter 属性

B. 通过一个过滤器表达式来设置新创建的 DataView 对象的 RowFilter 属性

C. 通过一个过滤器表达式来设置新创建的 Dataset 对象的 RowFilter 属性

D. 使用DataSet.Reset 方法

4.采用计数排序算法对数组 A = {1,0,3,1,0,1,1}进行排序,则辅助数组C的长度值为( )

A. 4

B. 5

C. 6

D. 7

5.下列哪些不是算法的基本特征( )

A. 输入

B. 输出

C. 中间处理

D. 可行性

6.对记录(54,38,96,23,15,72,60,45,83)进行直接插入排序时,当把第八个记录 45 插入到有序表时,为找到插入位置需比较()次

A. 4

B. 6

C. 5

D. 3

7.某软件系统结构图如图所示,该结构图的深度为( )

A. 2

B. 3

C. 4

D. 5

8.为开发客户关系管理系统,小马反复询问用户有关软件的功能,确定软件做什么。该阶段属于软件生命周期中的( )阶段。

A.需求分析

B.系统维护

C.软件测试

D.软件设计

9.以下对结构化程序设计的说法错误的是( )

A.对于一个复杂的问题先用抽象程序表示,再对抽象程序进一步分解,继续精化

B.结构化程序设计方法自顶向下,先整体后局部,可以提高软件开发效率

C.通过引入模块间的继承性和多态性等机制,增加了模块的可重用性,提高了软件开发效率

D.在软件详细设计阶段,采用结构化程序设计方法,可以把一个模块的功能逐步分解细化为某种程序语言的语句

10.N-S 图也称方框图,以下有关该图的说法,正确的是( )

A. 在总体设计时用 N-S 图表示模块,使软件总体设计清晰、可读性高

B. 在N-S 图中常需要用两个盒子:数据盒和过程盒

C. N-S 图形象直观,对循环的范围、条件语句的范围都能清晰描述,容易理解,但缺点是不易于表达嵌套结构

D. 以N-S 图为基础,遵循一个机械的规则就能方便地写出程序,这个规则称为走树(Tree walk)

11.当用n 比特进行分组的编号时,若接收窗口等于 1(即只能按序接收分组),那么如果要求连续 ARQ协议能正常

运行时,发送窗口大小是多少?( )

A. 不超过 2^n

B. 不超过2^n-1

C. 2^n

D. 2^n-1

12.设定linux 系统默认为字符模式,需要修改的配置文件是( )

A. etc/fstab

B. /etc/inittab

C. /etc/boot

D. /etc/inittab.conf

13.下列程序的运行结果是( )

#include <stdio.h>

main()

{

struct t

{

int x; int *y;

}*p;

int a[]={1,2};

int b[]={3,4};

struct t c[2]={5,a,6,b};

p=c;

printf("%d,%d",*(p->y),++(*p).x);

}

A. 2,6

B. 1,5

C. 2,5

D. 1,6

14.下列程序的功能是将实型数据 x 的整数部分取出存于 i 中,小数部分取出存于 f 中,请为横线处选择合适的程序( )

【求职】京东 2017校招技术类客观题_数组

A. f=(x-i)

B. *f=x-*i

C. *f=x-i

D. f=x-*i

15.下列函数 f 的功能是比较c 数组相邻行字符串的大小,比较后将值大的字符串置于值小的字符串的上一行,请为横

线处选择合适的程序( )

void f(char c[5][6])

{

int i,j;

char temp[10];

for(i=0;i<4;i++)

for(j=______;j<5;j++)

if(strcmp(c[i],c[j])>0)

{

strcpy(temp,c[i]);

strcpy(c[i],c[j]);

(c[j],temp);

}

}

A. i+1

B. 0

C. 1

D. i-1

16.下列程序的运行结果是( )

#include <stdio.h>

int f1(int x)

{

return x+5;

}

int f2(int x)

{

return 2*x-1;

}

main()

{

int (*p1)(int),(*p2)(int),(*t)(int), y1, y2;

p1=f1; p2=f2;

y1=p2(p1(1));

t=p1;

p1=p2;

p2=t;

y2=p2(p1(2));

printf("%d, %d\n",y1,y2);

}

A. 8,11

B. 6,13

C. 13,6

D. 11,8

17.下列程序的功能是将数组 x 中下标为奇数的相邻元素和存放在 a 数组中,比如a[0]=x[1]+x[3],a[1]=x[3]+x[5]…请

为横线处选择合适的程序( )

#include<stdio.h>

#include <string.h>

main( )

{

int x[10],a[10],i;

for (i=0;i<10;i++)

scanf("%d",&x[i]);

for(i=1;i<8;i+=2)

a[_______]=x[i]+x[i+2];

for(i=0;i<4;i++)

printf("%d ",a[i]);

printf("\n");

}

A. i-1

B. (i-1)/2

C. 2*i-3

D. i

18.以下程序程序运行后的结果是( )

#include<stdio.h>

#define N 4

void fun(int a[][N],int *p)

{

int i;

for(i=0;i<N;i++) {

if(i<3) p[i]+=a[i][i]-a[i][N-i-2];

else p[i]+=a[i][i]-a[i][N-i];

}

}

main()

{

int x[N][N]={{3,6,2,0},{2,8,7,9},{5,1,7,3},{9,5,3,7}},y[N]={3,5,8,6},i;

fun(x,y);

for(i=0; i<N; i++)

printf("%d ", y[i]);

printf("\n");

}

A. 4 5 8 10

B. -3 -1 1 3

C. 4 5 10 8

D. 1 3 -1 -3

二、不定项选择题

1.下列说法中正确的是( )

A. 算符优先关系表不一定存在对应的优先函数

B. 数组元素的地址计算与数组的存储方式有关

C. 每个文法都能改写为 LL(1)文法

D. 对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略

2.线性窥孔优化的特点包括( )

A. 优化对象可以是中间代码,也可以是目标代码

B. 每次处理的是一组相邻的指令

C. 对优化对象进行线性扫描

D. 优化对象只能是中间代码

3.在开发中,泛型简化了编程、提高了开发效率,以下说法正确的是( )

A. 泛型是程序设计语言的一种特性,所有语言均有

B. 泛型类是引用类型

C. 泛型可以加强类型安全和减少类转换的次数

D. .Net 和Java的泛型在运行速度会因为类型转换次数减少而加快

4.ORM 是对象到关系数据的热门技术,以下说法正确的是( )

A. ORM 是以中间件的形式存在,实现对象到关系数据库的映射

B. O/R Mapping 会为开发者生成 DAO,减少数据访问层的编码

C. ORM 负责生成SQL,开发者只需关注对象就可以了

D. ORM 中多对多的关系模式必须将关联单独作一个表

5.dns 服务中资源记录的类型有( )

A. PTR

B. A

C. CNAME

D. B

6.基于比较的排序算法是( )

A. 基数排序

B. 冒泡排序

C. 桶排序

D. 希尔排序

7.一个无向图G=(V,E),顶点集合 V={1,2,3,4,5,6,7},边集合 E={(1,2), (1,3),(2,4), (3,4), (4,5),(4,6), (5,7) , (6,7)},从顶点 1

出发进行深度优先遍历,可得到的顶点序列是 ( )

A. 1,2,3,4,5,6,7

B. 1,2,4,3,6,7,5

C. 1,3,4,5,7,6,2

D. 1,2,4,6,7,5,3

8.在含有10 个结点的二叉排序树上,查找关键字为 20 的结点,则依次比较的关键字有可能是( )

A. 10,30,25,20

B. 25,10,15,20

C. 10,30,20

D. 25,10,15,18,20

9.简单网络管理协议SNMP 由哪几个部分组成?( )

A. SNMP 本身

B. 管理信息结构SMI

C. 管理信息库MIB

D. SNMP 的信息库

10.在 MySQL 中,关于HASH 索引,下列描述正确的是( )

A. 只用于使用=或者 < = >操作符的等式比较

B. 优化器不能使用HASH 索引来加速 Order By 操作

C. 如果将一个MyISAM 表改为 HASH 索引的MEMORY 表,不会影响查询的执行效率

D. 只能使用整个关键字来搜索一行

11.下列程序的运行结果是 YY,78,96,请为横线处选择合适的程序( )

#include <stdio.h>

#include <string.h>

typedef struct

{

char name[9];

float score[2];

}STU;

void f(STU

{_______)

STU b={“YY”,78,96};

int i;

strcpy(a->name,b.name);

for(i=0;i<2;i++)

a->score[i]=b.score[i];

}

main()

{

STU c={“LL”,90,80};

f(&c);

printf("%s,%.0f,%.0f\n",c.name,c.score[0],c.score[1]);

}

A. *a

B. a

C. &a

D. a[]

11.下列程序的运行结果是 3,5,请为横线处选择合适的程序( )

#include<stdio.h>

struct S

{

int n;

char c[10];

} *p;

main()

{

struct S a[3]={{3,“abc”},{5,“def”},{7,“ghi”}};

p=a;

printf("%d,",(*p).n);

printf("%d\n",___________);

}

A. (++p)->n

B. (a+1)->n

C. p+±>n

D. (p+1)->n