程序员笔试题(思特奇全)
神州数码思特奇
试卷回收请不要在试卷上做任何标记答案写在答题卡上
JAVA 部分
一.Java基础
1.public static void main(String[] args){
for(int i=0;i<=10;i++){
if(i>6) break;
}
System.out.println(i);
}
将会打印出什么?
2.short s1=1;s1=s1+1;是否有错?如果有错怎么改动? short s1=1; s1+=1;
是否有错?如果有错怎么改动?
3.数组有没有length()这个方法? String有没有length()这个方法?
4.给我一个你最常见的runtime exception?关键
字:throws,throw,try,catch,finally分别代表什么意义?
5.Collection 和 Collections的区别?List,Set,Map的区别?
6.Abstract class 和 interface有什么区别?接口是否可以继承接口?抽象
类是否可以实现(implements)接口?抽象类是否可继承实体类(concrete class)?
7.是否可继承String 类?
8.谈谈finally, finally , finalize 的区别?
9.是否可以从一个static 方法内部发出对非 static方法的调用?如果调用该
如何实现?(请举例说明)
10.请列出XML 常用的解析技术,并分别列出各自的优缺点?
二.代码编程
1.下面打印出什么?
String str1="123",str2="123",str3=new String("123");
if(str1==str2){
System.out.println("1");
}
if(str1==str3){
System.out.println("2");
}
if(str1.equals(str2)){
System.out.println("3");
}
答:
2.Java代码查错
public class Something{
public int addOne(final int x){
return x;
}
}
答:
abstract class Something{
private abstract String doSomething();
}
答:
Interface A{
Int x=0;
}
class B{
Protected int x=1;
}
class C extends B impiements A{
pubpic void pX(){
System.out.println(x);
}
Public static void main(String[] args){
new C().p()
}
}
答:
3.编写代码,用jdbc 连接oracle数据库查询出表dChnGroupMsg表中所有记录并打印出group_id,group_name 字段的值.(请将答案写在背面)
4.请自己定义一个简短的XML代码,并使用所掌握的解析技术进行解析(请将答案写在背面)
三.画出你所接触、开发、理解的J2EE架构!
C语言测试
1.int t=2;
t<<=2;
问t=__________
2.dbno=(i>gPass.monthNum)? gPass.monthNum : i ;
问如果i 3.*s=9200.246; t=(int)((*s+0.005)*100); *s=(duoble)t/100 问*s= 。 4、int age[8]={32,25,12,33,52,9,22,40}; 要求用冒泡排序法排序(可以只写关键步骤) 5、有一个链表如下图所示: Head phNode Type *mp; mp=(phNodeType *)calloc(l.sizeof(phNodeType)); mp->next=NULL; 要求1:将新节点mp插入链表; 要求2:删掉链表头部的一个节点。 6、由同级文件gcount1390551.07只有两列,号码从139********到139********(有些号码无记录),最多10000行。 要求:编写一段算法,当操作员输入用户号码时,显示相应的金额(假定内存足够)。 UNIX测试 1、列出当前目录下的子目录清单(只列目录)。 2、将文件系统/bill/gcount_begin.07安全的转移到文件系统/tbmdata 下的 /tbmdata/sm/data/month下: 3、文件A.txt中包括如下三行内容: 113605569288 46600055601828820000714073 155********TLAQ2 TBAO2 8613900556007 013905561288 46000556900128820000714072 要求:用SHELL或awk将每行的第三到第七的字符取出来,进行排序。 4、有一文件gcount1390451.07.内容如下: 139******** 0 0 1 0 12.00 0.00 1.00 13.00 139******** 0 0 1 1 2.00 0.01 0.00 2.10 139******** 0 0 1 2 2.00 10.00 0.00 12.00 要求:用SHELL或awk的总文件的第9列,求平均值。 简述进程的通信方法:…、共享内存及消息队列。 数据库测试 1.论述什么是事务、数据的一致性、完整性如何保证。 2.日志的用途是什么,为什么要先于数据库写盘。 3.成绩表A(Name char(10),Grade float)中有3条记录(假设只有3人 参加考试) Name Grade LiLi 80.00 GiGi 78.00 Smart 89.90 班级资料表B(Name char(10),age int,sex char(1),……)中有全班50人的所有记录。要求写出SQL语句(顺序不可颠倒): a、按Grade从高到低的顺序列出全班的Name,无成绩记录的按零分计。 b、Grade 大于80的改为80. c、为无成绩的编出60分的成绩记录。 d、求平均成绩。 e、按成绩分组计算对应的人数。 简述题 1、什么是进程和线程?进程和线程有什么区别?进程和线程有什么优点和缺 点? 2、写出中级表达式( b * b – 4 * a * c )/ ( 2 * a ) 3、按字母序统计字符串 abbbbccccddde 中各个符号出现的次数,图示对应 HUFFMAN树的生成过程。 4、简述数据库系统的体系结构特点。 简述层次数据模型、网状数据模型、关系数据模型,简述三种数据库模型的优缺点。