java程序员经典笔试题

2023-06-19

第一篇:java程序员经典笔试题

Java程序员笔试题

说明:该份题目要求在1小时内答完

1、工厂方法模式和抽象工厂模式的区别

2、jsp/servlet 中 forward, include, reDirect 之间的区别

3、JSP中的两种include包含指令的区别与用法

4、ArrayList和Vector的区别,HashMap和Hashtable及HashSet的区别?

5、请说明在实际应用中,java.sql 包中的Statement和PreparedStatement有何区别?

6、如何遍历一个集合(collection),并在屏幕上打印出集合中的每个元素public void printStr

(Collection cols){

}

7、 写一个方法,实现字符串的反转,例如:输入abc,输出cba

PublicString reverseStr(String str){

//代码

}

8、 输入为整数数组,请写出如下的排序算法,使得数组data里面存储的数字随数组脚标的增大而依

次增大,即越小的数字存储的位置越靠前

Public void sort(int[]data){

}

9、 用户在JSP: input.jsp中输入姓名和手机号码,点”Done”按钮来提交请求到一个

1 / 6

servlet:test.java。test.java将输入的姓名和手机号码存储在文件store.txt里。

请写出input.jsp, test.java的程序源码,并在input.jsp和test.java中分别通过js和java代码对输入进行校验,如果1)姓名项没有填写或者输入的长度超过了20个字符2)手机号码项没有填写,或者输入了非数字的字符或者输入的长度不是13位,则返回input.jsp,并给出相应的错误提示。

10、 有若干条有关城市的信息,每条包括如下属性:ID (唯一递增的序列),CITY(城市名称),

DESC(城市说明),要求设计一套数据结构及算法使得1)所有登陆系统的用户均能使用这些城市信息2) 能够根据城市ID 号或名称获得城市的其他信息3)如果从该数据结构中找不到合适的城市信息,可以往该数据结构中添加新的城市信息,但相同的城市(ID号或名称有任意一个相同均认为是同一城市)在数据结构中只能有一条记录 4) 如任一条城市信息,超过两个小时没有被使用(查询)则需自动将其删除

pubic class CityCache{

}

11、 读下面一段程序,写出运行结果

----

pubicclassBaseClass{

static{

System.out.println(“aaaaa”);

2 / 6

}

BaseClass( ){

System.out.println(“11111”);

}

}

publicclassDerivedClass

extendsBaseClass{

static{

System.out.println(“bbbbb”) ;

}

DerivedClass(){

System.out.println(“22222”);

}

}

publicclassStartRun {

public static void main (String[ ] args){

DerivedClasssdc 1 = newDerivedClass( );

dc1 = newDerivedClass( );

}

}

12、 请写出符合要求的sql 语句(假定数据库为Oracle)。

3 / 6

现有数据表a,建表语句如下:

create table a (

bm char(4),——编码

mc varchar2(20)——名称

)

表中数据如下

bmmc

11111111

11121111

11131111

11141111

要求1:用一条sql语句实现对表a中数据的复制,即达到如下的结果(2)bmmc

11111111

11121111

11131111

11141111

11111111

11121111

11131111

11141111

4 / 6

要求2:请删除表中重复的记录(bm和mc都相同的记录为重复记录)

13、 classStack {

LinkedListlist = new LinkedList()

public synchronized void push (Objectx){

synchronized (list) {

list.addLast( x );

notify( );

}

}

public synchronized Object pop( ) {

synchronized (list) {

if ( list.size( )<=0)

wait ( );

return list.removeLast( );

}

}

5 / 6

}

请问上面这个类中有什么错误?应该怎么解决?

14、

15、 请写出MSSQL、ServerMysql和ORACE实现分页算法的sql语句。 UNIX和网络基础, 依次写出完成下列的操作命令,最好有常用参数的简单说明

1) 如何显示当前的IP配置信息

2) 查看当前目录

3) 拷贝文件或目录

4) 移动文件或目录

5) 删除文件或目录

6) 切换用户

7) 修改文件或目录的权限

8) 查看日志文件的最后1行

9) 查看系统内存、CPU的使用状况

10) 查看系统正在运行的和apache相关的进程

6 / 6

第二篇:JAVA程序员笔试题1

java程序员笔试题

JAVA 程序员笔试题

时间:30分钟

试题一:

简单描述一下什么是事务管理,事务管理中有哪些语句?

姓名:

试题二:

跳出当前循环的关键词是什么?继续本次循环的关键词是什么?

试题三:

JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?

试题四:

请写出最少三种设计模式的名称。

试题五:

描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理。

试题六:java中实现多态的机制是什么?

试题七:

public static void main(String[] args) {

int i=3,j=16; do{if(++i>=j--) continue; }while(i<9); System.out.println("i="+i+";j="+j);}

这段程序运行后输出的结果是什么?

试题八:

public class One {

}

public class Two extends One {

} protected void printA(){System.out.println("two A");} private void printB(){System.out.println("two B");} public static void main(String[] args) {Two t = new Two(); t.printAB();} protected void printA(){System.out.println("one A");} private void printB(){System.out.println("one B");} protected void printAB(){printA();printB();}

这段程序运行后输出的结果是什么?

试题九:

有一个表 “表A” 中包含 “姓名”,“成绩”两个字段,请写一个SQL语句查询出“成绩”大于60分的,“姓名”有重复的人的名字

试题十:

请写一个方法实现:传入的一个大于10位的字符串,把字符串的最后两位移动到字符串的第4位后面。

第三篇:JAVA工程师笔试题

一、选择题

1.Java中提供了名为( )的包装类来包装原始字符串类型。 A.Integer B.Char C.Double D.String

2.java.lang包的( )方法比较两个对象是否相等,相等返回true。 A.toString() B.equals() C.compare()

D.以上所有选项都不正确

3.下面的集合中,( )不可以存储重复元素。 A.Set B.Collection C.Map D.List 4. Java接口的修饰符可以为()

A private B protected C final D abstract

5. 下面哪些是Thread类的方法()

A start() B run() C exit() D getPriority()

6. 下面关于java.lang.Exception类的说法正确的是()

A 继承自Throwable B Serialable C集成自Error D以上都不正确

7.下面程序的运行结果:()

public static void main(String[] args) { // TODO Auto-generated method stub Thread t = new Thread() { public void run() { pong(); } }; t.run(); System.out.print("ping"); } static void pong() { System.out.print("pong"); }

A pingpong B pongping C pingpong和pongping都有可能 D 都不输出

8. 下面哪个流类属于面向字符的输入流( ) A BufferedWriter B FileInputStream C ObjectInputStream D InputStreamReader

9. ArrayList list = new ArrayList(20);中的list扩充几次()

A 0 B 1 C 2 D 3

二、问答题

1. String与StringBuffer的区别?

2.谈谈final、finally、finalize的区别?

3.创建一个对象的方法有哪些?

4.编写一个程序,产生ArrayIndexOutOfBoundsException异常,并捕获该异常,在控制台输出异常信息。

5.写一个线程安全的Singleton实例

6. 请用JAVA代码实现拷贝一个大于2G的文件到其他盘。

7.设计四个线程,其中两个线程每次对变量i加1,另外两个线程每次对i减1. 8.自己编写代码,实现生产者-消费者模型功能.内容自由发挥,只需要表达思想.

9.在Mysql中,请用一条SQL语句将现有的三条记录复制一下,达到以下的效果: ID name pass

aaa 111

bbb 222

ccc 333

aaa 111

bbb 222

ccc 333

10.用SQL语句删除上一题的重复记录.。

第四篇:JAVA工程师笔试题(答案版)

JAVA工程师笔试题

一、选择题

1、如下代码

public class Test { public int aMethod() { static int i = 0; i++; return i; } public static void main (String args[]) { Test test = new Test(); test.aMethod(); int j = test.aMethod(); System.out.println(j); } } 输出结果是什么?

A. 0 B. 1 C. 2 D. 编译失败

2. 如下代码 int i =1,j =10; do { if(i++> --j) { continue; } } while (i <5); System.out.println("i = " +i+ "and j = "+j); 输出结果是什么? A. i = 6 and j = 5 B. i = 5 and j = 5 i = 5 and j = 6

3. 如下代码:

public class SwitchTest { public static void main(String[] args) { System.out.println("value = " + switchIt(4)); } public static int switchIt(int x) { int j = 1; switch (x) { case 1: j++; case 2: j++; case 3: j++;

C. i = 6 and j = 5 D. case 4: j++; case 5: j++; default: j++; } return j + x; } } 输出结果是什么? A. value = 3 B. value = 4 C. value = 5 D. value = 6 E. value = 7 F. value = 8

4. 在接口中以下哪条定义是正确的? (多选) A. void methoda(); B. public double methoda(); C. public final double methoda(); D. static void methoda(double d1); E. protected void methoda(double d1);

5. 如下代码:

public void test(int x) { int odd = x%2; if (odd) {

System.out.println("odd); } else {

System.out.println("even"); } } 哪个描述正确? A. 编译失败.

B. "odd" 永远被输出.

C. "even" 永远被输出 D. "odd" 输出x的值, E. "even" 输出x的值

6. 如下代码: public class X { public X aMethod() { return this;} }

public class Y extends X {} 哪些方法能加到Y类的定义中? A. public void aMethod() {}

B. private void aMethod() {} C. public void aMethod(String s) {} D. private Y aMethod() { return null; } E. public X aMethod() { return new Y(); }

7. 如下代码: public class X { public static void main(String [] args) {

try {

badMethod();

System.out.print("A");

}catch (Exception ex) {

System.out.print("C");

}finally {

System.out.print("B");

}

System.out.print("D"); } public static void badMethod() {

throw new Error(); } } 结果是什么? A. ABCD B. 编译失败. C. 显示C,退出程序. D. 显示B,退出程序.

E. 显示BCD,退出程序.

8. 如下代码:

public class Foo { public static void main(String[] args) {

try {

return;

} finally {

System.out.println( "Finally" );

} } } 输出结果是什么? A. Finally B.编译失败 C. 代码正常运行但没有任何输出. 出异常

9. 如下代码: class Base { Base() { System.out.print("Base"); } } public class Alpha extends Base { public static void main( String[] args ) {

new Alpha();

new Base(); } } 结果是什么?

D. 运行时抛A. Base B. BaseBase C. 编译失败. D. 代码运行但没有输出. E. 运行时抛出异常.

10、下面哪个语句是创建数组的正确语句?( ) A . float f[][] = new float[6][6];

B . float []f[] = new float[6][6]; C . float f[][] = new float[][6];

D . float [][]f = new float[6][6]; E . float [][]f = new float[6][];

二、问答题

1、String和StringBuffer的区别

2、MVC的各个部分都有那些技术来实现?如何实现?

3、什么是java序列化,如何实现java序列化?

4、什么是单例模式?写一个单例类。

5、说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法(可在面试时候详述)

三、SQL基础题

1、创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话

2、修改学生表的结构,添加一列信息,学历

3、修改学生表的结构,删除一列信息,家庭住址

4、向学生表添加如下信息:

学号 姓名 年龄 性别 联系电话 学历

1 A 22 男

123456 小学

2 B 21 男

119 中学

3 C 23 男

110 高中

5、修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”

6、删除学生表的数据,姓名以C开头,性别为‘男’的记录删除

四、SQL高级题

说明:有三个表,项目表、合同表、付款表

下面是表结构

项目表(项目编号 int,项目名称 varchar(50))

项目编号 项目名称

项目1

项目2

项目3

合同表(合同编号 int,项目编号 int,合同金额 number(7,3))

合同编号 项目编号 合同金额

1000

1500

2000

付款表(付款编号 int,合同编号 int,付款金额 number(7,3))

付款编号 合同编号 付款金额

1000 2

2000 3

800 一个项目可能会有签署多个合同,每个合同会分几次付款,

1、设计一个查询,要求返回结果列出项目所有合同的金额

2、设计一个查询,要求返回结果列出项目所有合同已付款金额

3、请您设计一个查询语句,检索的格式如下

项目编号 项目名称 项目所有合同的金额 项目所有合同已付款金额 1 项目1 2500.000 1100.000 2 项目2 2000.000 NULL

选择题

DDF(CDE)A(CE)DABC 问答题

1、String和StringBuffer的区别

JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。另外,String实现了equals方法,new String(“abc”).equals(newString(“abc”)的结果为true,而StringBuffer没有实现equals方法,所以,new StringBuffer(“abc”).equals(newStringBuffer(“abc”)的结果为false。

2、MVC的各个部分都有那些技术来实现?如何实现? MVC是Model-View-Controller的简写。Model 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), View 是应用的表示面(由JSP页面产生),Controller 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。

3、什么是java序列化,如何实现java序列化? 序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。 序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。

4、什么是单例模式?写一个单例类。

所谓单例模式,就是把构造方法设为private,不能直接去实例化,而要通过一个方法返回该类的实例,也就是拐了个弯而已. public class A{ private A(){} public static A getA(){

A a=new A();

return a; } public void show(){System.out.println("123456");} public static void main(String[] args){

A a=getA(); a.show(); } }

5、说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法(可在面试时候详述)

Factory(工厂模式),

Builder(建造模式),

Factory Method(工厂方法模式), Prototype(原始模型模式),Singleton(单例模式),

Facade(门面模式), Adapter(适配器模式),

Bridge(桥梁模式),

Composite(合成模式),

Decorator(装饰模式),

Flyweight(享元模式),

Proxy(代理模式), Command(命令模式),

Interpreter(解释器模式), Visitor(访问者模式), Iterator(迭代子模式),

Mediator(调停者模式),

Memento(备忘录模式), Observer(观察者模式),

State(状态模式),

Strategy(策略模式),

Template Method(模板方法模式), Chain Of Responsibleity(责任链模式) 工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例,通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作。首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。

第五篇:Java软件开发工程师笔试题

一、选择题(25 x 2’ = 50’)

1、 一个Java程序运行从上到下的环境次序是()

A. 操作系统、Java程序、JRE/JVM、硬件 B. JRE/JVM、Java程序、硬件、操作系统 C. Java程序、JRE/JVM、操作系统、硬件 D. Java程序、操作系统、JRE/JVM、硬件

2、

下面代码中的第2行可以插入一行代码 ()保证程序编译通过。

1、 public interface A{

2、

3、 } A. void method(); B. public void method(); C. static void method(); D. private void method(); E. protected void method();

3、 关于异常下列描述中,错误的是()

A.异常机制可以用于流程控制

B. finally代码段在发生异常时不一定必须执行

C.

在catch代码段中可以使用return语句来返回到异常抛出点

D.

可以把catch到的异常对象再次抛出,使上层try—catch结构继续处理该异常事件

4、 关于被私有访问控制符private修饰的成员变量,以下说法正确的是()

A. 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B. 可以被两种类访问和引用:该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D. 只能被同一个包中的类访问

5、 某类Example的main()方法参数为args,当命令行中输入Java Example cat时,args[0]的值为()。

A. cat

B. Java

C. example

D. null

6、 下面关于Thread类提供的现成控制方法的说法中,错误的是()

A. 在线程A中执行现成B的join方法,则线程A等待直到线程B执行完成。 B. 线程A通过调用iterrupt方法来中断其阻塞状态

C. 若线程A调用方法isAlive返回值为true,则说明A正在执行中 D. currentThread方法返回当前线程的引用

7、 类Test1定义如下:

1.public class Test1{ 2.

public float aMethod(float a,float b){ }

1/10

3.

4.}

将以下哪种方法插入行3是不合法的。()

A. public float aMethod(float a, float b,float c){ } B. public float aMethod(float c,float d){ } C. public int aMethod(int a, int b){ } D. private float aMethod(int a,int b,int c){ }

8、 下面程序的输出结果是( ) private static void foo() { try { System.out.println("try"); foo(); } catch (Throwable e) { System.out.println("catch"); foo(); } finally { System.out.println("finally"); foo(); } }

public static void main(String[] args) { foo(); } A.执行一段时间后报栈溢出。 B.会一直输出“try”。

C.会一直输出“try”和“finally”。 D.会一直输出“try”、“catch”和“finally”

9、 下面的哪些程序片断可能导致错误?( ) A. String s = "Gone with the wind"; String t = " good "; String k = s + t;

B. String s = "Gone with the wind"; String t; t = s[3] + "one";

C. String s = "Gone with the wind"; String standard = s.toUpperCase();

D. String s = "home directory"; String t = s - "directory";

10、 已知如下代码:

2/10

1: class Example{ 2: String str; 3: public Example(){ 4: 5: } 6: public Example(String s){ 7: 8: } 9:} 10: class Demo extends Example{ 11: } 12: public class Test{ 13: public void f () { 14: 15: 16: } } 哪句语句会导致错误?( ) A、line 3 B、line 6 C、line 10 D、line 14 E、line 15

11、 下面的代码中第4行创建的对象在什么时候符合垃圾回收的条件()

1、class Bar { }

2、class Test {

3、 Bar doBar() {

4、 Bar b = new Bar();

5、 return b;

6、 }

7、 public static void main (String args[]) {

8、 Test t = new Test();

9、 Bar newBar = t.doBar();

10、

11、

12、 newBar = new Bar(); } } Example ex = new Example("Good"); Demo d = new Demo("Good"); str=s; str= "example"; A.程序运行第9行之后。 B.程序运行第10行之后。 C.doBar方法运行结束之后。 D.main方法运行结束之后。

12、 下列关于for循环和while循环的说法中哪个是正确的?()

A. while循环能实现的操作,for循环也都能实现

B. while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

3/10

C. 两种循环任何时候都可替换

D. 两种循环结构中都必须有循环体,循环体不能为空

13、 下述说法中,错误的是( ) A.Java中,方法的重载是指多个方法可以共享同一个名字 B.Java中,用abstract修饰的类称为抽象类,它不能实例化 C.Java中,接口不包含成员变量和方法实现 D.Java中,构造方法可以有返回值

14、 下面哪些是正确的( )

11. class ClassA {}

22. ClassB p1 = new ClassB(); 23. ClassC p2 = new ClassC(); 24. ClassA p3 = new ClassB(); 25. ClassA p4 = new ClassC(); 12. class ClassB extends ClassA {} 13. class ClassC extends ClassA {} and:

21. ClassA p0 = new ClassA(); A. p0 = p1;

15、 以下代码片段,正确的结果是:( )

11.classA {

17. throw new IOException();

18. } }

19. public static void main(String[] args) {

20. try { new B().process(); } 21. catch (IOException e) {

22. System.out.println(”Exception”); } } 12. public void process() { System.out.print(”A,”); } } 13. class B extends A { 15. super.process(); A. Exception B. A,B,Exception C. Compilation fails because of an error in line 20. D. Compilation fails because of an error in line 14. E. A NullPointerException is thrown at runtime.

16、 用直接插入排序方法对下面四个序列进行排序(由小到大),元素比较次数最少的是( )。

A. 94,32,40,90,80,46,21,69 B. 32,40,21,46,69,94,90,80 C. 21,32,46,40,80,69,90,94 D. 90,69,80,46,21,32,94,40

17、 设栈最大长度为3,入栈顺序为1,2,3,4,5,6,则不可能的出栈序列是()

A. 1,2,3,4,5,6 B. 2,1,3,4,5,6 C. 3,4,2,1,5,6 D. 4,3,2,1,5,6

18、 设有98个已排序列元素,采用二分法查找时,最大比较次数是()

A. 49 B.15 C.20 D.7

4/10

14. public void process() throws IOException { 16. System.out.print(”B,”); B. p1 =p2;

C. p2 = p4;

F. p2 = (ClassC)p4; D. p2 = (ClassC)p1; E. p1 = (ClassB)p3;

19、 若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()

A.9 B.11 C.15 D.不确定

20、 以下与数据的存储结构无关的术语是( )。

A.循环队列 B. 链表 C. 哈希表 D. 栈

21、 设数组A[10„100,20„100]以行优先的方式顺序存储,每个元素占4个字节,且已知A[10,20]的地址为 1000,则A[50,90]的地址是( )

A. 13240 B.14250 C.24220 D.14240

22、 链表不具有的特点是()

A.插入、删除不需要移动元素 B.可随机访问任一元素 C.不必事先估计存储空间 D.所需空间与线性长度成正比

23、 下面关于线性表的叙述中,错误的是哪一个?()

A.线性表采用顺序存储,必须占用一片连续的存储单元。 B.线性表采用顺序存储,便于进行插入和删除操作。 C.线性表采用链接存储,不必占用一片连续的存储单元。 D.线性表采用链接存储,便于插入和删除操作。

24、 若一个栈的输入序列为1,2,3,„,n,输出序列的第一个元素是i,则第j个输出元素是()。 A. i-j-1 B. i-j C. j-i+1 D. 不确定的

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

A. 图的遍历是从给定的源点出发每一个顶点仅被访问一次 B. 图的深度遍历不适用于有向图

C. 遍历的基本算法有两种:深度遍历和广度遍历 D. 图的深度遍历是一个递归过程

二、程序改错(5 * 2’ = 10’) 1. ---- public class Unbelievable { static Integer i; public static void main(String[] args) {

} } if (i == 42) System.out.println("Unbelievable"); 2. ——————————————————————————————————

class Animal {

public String noise() {

5/10

龙通科技有限公司笔试题

} class Dog extends Animal {

} class Cat extends Animal {

} public class Test {

} public static void main(String[] args) {

} Animal animal = new Dog(); Cat cat = (Cat) animal; cat.noise(); public String noise() { } return "meow"; public String noise() { } return "bark"; } return "peep"; 3. ——————————————————————————————————————

abstract class Something { } private abstract String doSomething(); 4. ——————————————————————————————————————

public class Something {

} class Other { } public int i; public static void main(String[] args) {

} public void addOne(final Other o) { } o.i++; Other o = new Other(); new Something().addOne(o); 5. ——————————————————————————————————————

class Something {

final int i; public void doSomething() { System.out.println("i = " + i); 6

龙通科技有限公司笔试题

} }

三、 程序阅读题(每空2’,共 40’)

1、 阅读以下java代码,写出运行结果

class StaticTest {

}

2、 编写将一维数组a[]中互不相同的数按从小到大顺序重新存于一维数组a[]的程序。

class A{ public static void main(String[] args){

} for(j=0;j

} System.out.prinln(a[j]); int a[]={15,7,15,6,4,3,4,6,7}; int i,j,k,low,high,mid,t; for(i=k=1;i=a[i]) ____________; else low=mid+1; } if(____________|| a[low]!=a[i]){ t=a[i]; for(j=k-1;__________;j--) a[j+1]=a[j]; ___________; k++; }

static int x=1; int y; StaticTest(){ } public static void main(String args[ ]){ StaticTest st=new StaticTest(); System.out.println("x=" + x); System.out.println("st.y=" + st.y); st=new StaticTest(); System.out.println("st.y=" + st.y);

} static { x++;} y++;

龙通科技有限公司笔试题

}

3、 请用JAVA编写如下程序:此程序处理一个由0和非0数字成员组成的数组(长度自定),

例如0 0 1 2 0 1 0 0 0 1 0 0 0 0 0 2 0 7 8 9 0 0 1 2 3 4,把数组中所有连续两个以上的0去掉, 将结果存入一个新数组。如上例处理后结果为,1 2 0 1 1 2 0 7 8 9 1 2 3 4。 public static void main(String[] args) {

int[] srcArray = {0,0,1,2,0,1,0,0,0,1,0,0,0,0,0,2,0,7,8,9,0,0,1,2,3,4}; int[] destArray = new int[50]; int i=0,j=0,count=0; for(i=0;i

} } for(i=0;i

public static void main(String[] args) {

} public static int Keeper(int peo, int n) { int k = 0; int peo; System.out.println("请输入人数:"); Scanner inp = new Scanner(System.in); peo = inp.nextInt(); int k = Keeper(peo, 3); System.out.println("最后留下的是 " + k + " 号!");

4、 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,再从他的下一 8

龙通科技有限公司笔试题

int[] array = new int[peo]; for (int i = 1; i < peo; i++) {

} for (k = 0; k < peo; k++) {

} return k + 1; if (array[k] == 0) { } 4 ; ○int j = 1; while (j <= n) {

} if ( ○1 ) { } if (j == n) { } j++; 3 ; ○

2 ; ○j--;

}

}

5、 在一个n×n的棋盘上,放置n个不能互相捕捉的国际象棋“皇后”的所有布局。以下是n皇后的算法,请完成填空部分:

public class Queen {

Queen(int d) {

} // 放置皇后的方法

public void place(int row) {

int i = 0; if (row == n) { 1 ; ○n = d; queenPos = new int[d]; private int n; private int[] queenPos; private double num = 0; // 记录共有多少种摆法

} else { 9

龙通科技有限公司笔试题

} // 判断布局是否合法

private boolean legality(int list) {

} // 测试方法

public static void main(String[] args) {

}} System.out.println("输入个数n:"); Scanner in = new Scanner(System.in); int n = in.nextInt(); try {

} Queen q = new Queen(n); q.place(0); System.out.println(n + "*" + n + "时," + "共有" + q.num + "种可能摆法。" ); System.out.println("OK!"); e.printStackTrace(); if (list == 0)

} return true; return true; if (queenPos[i] == queenPos[list]) 3 ; ○for (int i = 0; i < list; i++) {

} for (i = 0; i < n; i++) {

} queenPos[row] = i; if (legality(row))

2 ; ○if (○4 ) return false; } catch (Exception e) { 10

上一篇:观建党伟业有感2000字下一篇:福特汽车公司swot分析

本站热搜