JAVA测试题(附答案)
- 格式:doc
- 大小:88.00 KB
- 文档页数:15
请用JAVA语言回答
Barbara_111@
1. 设X为FLOAT型变量,Y为DOUBLE型变量,a为INT型变量,B为LONG型变量,C为CHAR型变量,则表达式X+Y*A/X+B/Y+C的值为_FLOAT_类型。
X=2.5 A=7 Y=4,则表达式X+A%3*(INT)Y的值为_7.5_
2. 输出1到100中的偶数,一行5个。
int count = 0;
for(int i=0; i<=100; i++){
if(i % 2 == 0){
System.out.print(i);
count ++;
}
if(count % 5 ==0 && count > 0)
System.out.println();
}
3. 打印出所有的“水仙花数”。所谓水仙花数指一个三位数,其各位数字的立方和等于该数本身。
for(int i=0; i<1000; i++){
int a = Integer.parseint(String.valueOf(i).substring(0,1));
int b = Integer.parseint(String.valueOf(i).substring(1,2));
int c = Integer.parseint(String.valueOf(i).substring(2,3));
if(a^3 + b^3 + c^3 == i)
System.out.println(i);
}
4. 打印一个三角形的0-9的乘法表。
for(int a=9; a>0 ; a--){
for(int b=9; b>a; b--){
System.out.print(a + “*” + b + “=” + a*b);
}
System.out.println();
}
5. 创建一个有两个方法的类,其中第一个方法两次调用每二个方法;第一次不使用THIS,第二次使用THIS。
public class Test(){
public void a(){
b();
this.b();
}
public void b(){}
}
PS:搞不懂这题啥意思,感觉作这题很白痴.
6. 编写从键盘读入10个字符入入一个字符数组,并在屏幕上显示它们的程序。请处理数组越界异常。
InputStrem is = System.in; int[] array = new int[10];
int pos = 0;
while(pos<10){
int c = in.read();
array[pos] = c;
pos++;
}
for(int i=0; i
System.out.print(arry[i]);
7. 利用数组,初始化成10个整数,将其排序
public void sort(int[] data) {
int temp;
for(int i=1;i
for(int j=i;(j>0)&&(data[j]
SortUtil.swap(data,j,j-1);
}
}
}
public void init(){
int a = new int[10];
for(int i=0; i
a[i] = new Random().nextInt();
}
sort(a);
}
8. 编程完成下列功能:建立两个文件MYFILE1。TXT和MYFILE2。TXT,对文件MYFILE1。TXT输入内容“I am a student.”,并将其内容拷贝给MYFILE2。TXT
File file1 = new File(MYFILE1.txt);
File file2 = new File(MYFILE2.txt);
PrintWriter pw = new PrintWriter (new FileOutPutStream(file1));
pw.print(I am a student.);
pw.flush();
pw.close();
InputStream is = new FileInputStrream(file1);
OuputStream os = new FileOutputStream(file2);
while(is.avalible()){
os.write(is.read());
os.flush();
}
is.close();
os.flush();
9. 实现一个APPLET,使其可以用三个按钮控制:
A、 从服务器下载音乐播放 B、 不停地运行一个动画
C、 使上述动画和音乐协调播放
10、使用组件,制作一元二次方程求根的系统。要求:
A、一元二次方程三个系数a b c输入界面
B、显示检查b*b-4*a*c 的值
C、显示求出的根
int a,b,c,p,q,x,x1,x2;
p=b*b-4*a*c;
if(p>0){
x=(-b)/(2*a);
q=Math.sqr(p)/(2*a);
x1=x+q;
x2=x-q;
System.out.println('Two real root, X1,X2:'+x1 + x2);
}
if(p==0){
x=(-b)/(2*a);
System.out.println ('One real root:'+x) ;
}
if(p<0){
System.out.println ('No real root.')
}
11、实现两个定时线程,一个线程每隔1S显示一次,一个线程每隔3S显示一次
Thread t1 = new Thread(new Runnable(){public void
run(){System.out.println(“A”);Thread.currentThread().sleep(1000));
Thread t2 = new Thread(new Runnable(){public void
run(){System.out.println(“A”);Thread.currentThread().sleep(3000));
t1.start();
t2.start();
12.编程读出中国矿业大学主页的HTML文件,判断主页的HTML文件中有无关于“教学改革“的内容。上面的程序中用到了哪些有关URL操作的访求?各起什么作用?中国矿业大学URL为:
URL servletURL = new URL("");
URLConnection servletConnection = servletURL.openConnection();
LineNumberReade lur = new LineNumberReade (servletConnection. .openStream());
while(lur.avalible()){
String s = lur.readLine();
if(s.indexOf(“教学改革“) > =0)
System.out.println(“OK”)
}
lur.close();
servletConnection.close();
第二单元 自检自测 1:将下列表达式转换为是JAVA表达式: 1+x^2/Math.seq
(1)
(2)(a*x+(a-x)/a*3)/2
2、设x为float型变量,y为double型变量,a为int型变量, b为long型变量,c为char型变量, 则表达式x+y﹡a/x+b/y+c的值为_double_类型。设x=2.5,a=7,y=4 则x+a%3*(int)y的值为_double__
3、写出下列程序执行结果:
Int a=3,b=10,c=0;
If(a>b)b=5;c=7;语句执行后,b=_10__,c=__7___
4.下列for循环的执行次数为__0___
for(int x=0;(x==0) && (x>4);x++);
5.下列语句执行后,j的值为__5__
Int j=3,i=2
While(--i!=i/j)j=j+2;
6、下列语句执行后K值为__2___
int i=10,j=18,k=30;
switch(j-i)
{case 8:k++;
case 9:k+=2;
case 10:k+=3;
default:k/=j;}
7、下列语句执行后X的值为_25_
int a=3,b=4,x=5;
if(++a==b)x=++a*x;
8、以下程序段结束后变量sum值为_3450_
int sum=0,i;
for(i=1;i<=4;i++)
{switch(i)
{case 1:{sum+=2;}
Case 2:{sum+=4;continue;}
Case 3:{sum+=8;}
Case 4:{sum+=16;break;}
}
}
9、. 你编译一个定义了5个类和18个方法的Java源文件。请问,当编译成源文件时会产生多少字节码文件,扩展名是什么?d
a) 23个字节码文件,扩展名为.class
b)1个字节码文件,扩展名为.class
c) 5个字节码文件,扩展名为.java 2211xx)3(21axaax