链家JAVA笔试题

单选题

1、在Java中下列关于自动类型转换说法正确的是( )。

A. 基本数据类型和String相加结果一定是字符串型

B. char类型和int类型相加结果一定是字符

C. double类型可以自动转换成int

D. char + int + double + “ ”结果一定是double

参考答案:A

2、在Java中,构造方法何时被调用?( )

A. 类定义时

B. 创建对象时

C. 调用对象方法时

D. 使用对象变量时

参考答案:B

3、执行下面Java代码结果是( )

for(int i = 0;;){

System.out.println(“这是”+i);

break;

}

A. 语法错误,缺少表达式2和表达式3

B. 输出:这是0

C. 死循环

D. 程序什么都不输出

参考答案:B

4、有如下Java程序段:

int total = 0;

for (int i=0; i

{

if(i==1) continue;

if(i==2) break;

total +=i;

}

则执行完该程序段后total的值为:( )

A. 0

B. 1

C. 3

D. 6

参考答案:A

5、在C++中用( )能够实现将参数值带回。

A. 数组

B. 指针

C. 引用

D. 上述ABC都可

参考答案:D

6、以下php代码的执行结果为( )。

$num =”32php”+8;

echo $num;

?>

A. 32php8

B. 32php

C. 40

D. 40php

参考答案:A

7、mysql_connect()与@mysql_connect()的区别是( )

A. @mysql_connect()不会忽略错误,将错误显示到客户端

B. mysql_connect()不会忽略错误,将错误显示到客户端

C. 没有区别

D. 功能不同的两个函数

参考答案:B

8、在面向对象软件开发方法中,一个对象一般由( )组成。

A. 名称、消息、函数

B. 名称、属性、实例

C. 对象名、属性、消息

D. 对象名、属性、方法

参考答案:D

9、下面有两个Java类的定义:

class Person{

long id;

String name;

}

class Student extends Person{

int score;

int getScore(){

return score;

}

}

请问类Person和类Student的关系是( )

A. 包含关系

B. 继承关系

C. 关联关系

D. 无关系,上述类定义有语法错误

参考答案:B

10、下面这段php代码的执行结果为( )

$arr=array(3 , 2, 5 , 4);

functionmanageArr($arr){

$n=count($arr);

for($i=0;$i

for($j=$i+1;$j

if($arr[$j]

$temp=$arr[$i];

$arr[$i]=$arr[$j];

$arr[$j]=$temp;

}

}

}

return $arr;

}

$arr = manageArr($arr);

var_dump($arr);

?>

A. array(4) { [0]=>int(3) [1]=>int(2) [2]=>int(5) [3]=>int(4) }

B. array(4) { [0]=>int(4) [1]=>int(3) [2]=>int(2) [3]=>int(5) }

C. array(4) { [0]=>int(5) [1]=>int(3) [2]=>int(4) [3]=>int(2) }

D. array(4) { [0]=>int(2) [1]=>int(3) [2]=>int(4) [3]=>int(5) }

参考答案:D

解析:php版本的冒泡排序

11、结构化程序设计所规定的三种基本控制结构是?( )

A. 输入、处理、输出

B. 顺序、选择、循环

C. 树形、网形、环形

D. 主程序、子程序、函数

参考答案:B

12、PHP中向数组头部插入元素使用( )函数。

A. array_push()

B. array_pop()

C. array_shift()

D. array_unshift()

参考答案:D

解析:array_push向数组尾部插入元素,array_unshift()向数组头部插入元素。

13、#define F(x , y) (x)*(y)

main()

{

int a=3, b=4;

printf(“%d\n”,F(a++,b++));

}

程序运行后的输出结果是( )

A. 12

B. 15

C. 16

D. 20

参考答案:A

14、mysql_affected_rows对哪个操作没有影响?( )

A. delete

B. update

C. select

D. Insert

参考答案:C

15、若要删除数据库中已经存在的表T,需要用( )。

A. DELETE TABLE T

B. DELETE T

C. DROP TABLE T

D. DROP T

参考答案:C

16、PHP中下面哪个函数可以打开文件或者URL?( )

A. file_open()

B. forpen()

C. open_file()

D. fget()

参考答案:B

解析:PHP fopen()函数可用于打开文件或者URL。

17、给出下面Java代码,关于该程序以下哪个说法是正确的?( )

public class Person{

static int arr[]= new int[5];

public static void main(String a[]){

System.out.println(arr[0]);

}

}

A. 编译时将产生错误

B. 编译时正确,运行时将产生错误

C. 输出零

D. 输出空

参考答案:C

18、下列说法正确的是( )。

A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名

C. constructor在一个对象被new时执行

D. 一个class只能定义一个constructor

参考答案:C

“constructor必须与class同名,但方法不能与class同名”这句话是错误的,方法是可以和class同名的;

方法可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。

19、分析选项中关于Java中this关键字的说法正确的是( )。

A. this关键字是在对象内部指代自身的引用

B. this关键字可以在类中的任何位置使用

C. this关键字和类关联,而不是和特定的对象关联

D. 同一个类的不同对象共用一个this

参考答案:A

20、Java编程所必须的默认引用包是( )。

A. java.sys包

B. java.lang包

C. java.new包

D. 以上都不是

参考答案:B

编程题

试题描述:小明喜欢在火车旅行的时候用手机听音乐,他有N首歌在手机里,在整个火车途中,他可以听P首歌,所以他想产生一个播放表产生P首歌曲,这个播放表的原则是:

(1)每首歌都要至少被播放一次

(2)在两首一样的歌中间,至少有N首其他的歌

小明想有多少种不同的播放表可以产生,那么给你N、M、P,你来算一下,输出结果取1000000007的余数。

输入:输入N、M、P N的范围1到100 M的范围0到 N P的范围在N到100

输出:输出结果mod 1000000007的余数

输入示例:

1 0 3

输出示例:

1

玥玥带乔乔一起逃亡,现在有许多的东西要放到乔乔的包里面,但是包的大小有限,所以我们只能够在里面放入非常重要的物品。现在给出该种物品的数量、体积、价值的数值,希望你能够算出怎样能使背包的价值最大的组合方式,并且输出这个数值,乔乔会非常感谢你。

对于30%的数据 1

1

输入

第1行有2个整数,物品种数n和背包装载体积v;

第2行到i+1行每行3个整数,为第i种物品的数量m、体积w、价值s。

输出

仅包含一个整数,即为能拿到的最大的物品价值总和。

样例说明:选第一种一个,第二种两个,结果为3x1+5x2=13。

输入示例:

2 10

3 4 3

2 2 5

输出示例:

13

小明有n(1≤2000)个美味的食物,他想卖掉它们来赚钱。这些食物放在一些箱子里,它们有些有趣的特性:

(1)这些食物被编号1~n,每一天小明可以从这排箱子的头部或者尾部取出食物去卖;

(2)这些食物放的越久,年龄越大,价值越大,食物i有一个初始的价值V(i);

(3)放了a天后,年龄为a,食物最终价值为V(i)xa。

给定每一个食物的初始价值V(i),请求出小明卖掉它们后可以获得的最大价值,第一天出售的食物年龄为1,此后每增加一天食物的年龄就加1。

提示:

样例说明:小明出售这些食物(初始价值1,3,1,5,2)的顺序为:第一天卖掉1个,第二天卖掉5个,第三天卖掉2个,第四天卖掉3个,第五天卖掉4个,获得最大的价值1x1+2x3+3x3+4x1+5x5=43。

输入

第1行:一个整数n;

第i+l行:每行食物i的初始价值V(i)。

输出

1行:小明最终可以获得的最大价值。

输入示例:

5

1

3

1

5

2

输出示例:

43

你可能感兴趣的:(面试题,android,java)