当前位置:编程学习 > JAVA >>

JAVA程序分析及编程题。回答得好可追加积分。

三、程序分析题

1. 

class First{

public void aMethod()

{

System.out.println("inFirstclass");

}

}

public class Second extends First

{

public void aMethod()

{

System.out.println("inSecondclass");

}

public static void main(String[ ] args)

{

Second s=new Second( );

s.aMethod();

}

}

结果:                             

2.

public class ChangeStrDemo

{

public static void changestr(String str)

str="welcome"; 

public static void main(String[] args) 

String str="5678"; 

changestr(str); 

System.out.println(str); 

}

}

结果:                                

3.

public class FooDemo{

static boolean foo(char c) 

{

System.out.print(c); 

return true; 

public static void main(String[] args) 

int i=0; 

for (foo('a'); foo('b')&&(i<2); foo('c')){ 

i++ ; 

foo('d'); 

System.out.println("\n");

}

}

结果:                                

四、编程题

1.利用面向对象知识,实现一个长方体的体积、表面积的计算,要求长方体的初始体积是1,可以修改相应的长、宽、高的值。

2.输出等腰*型图。

3.编程实现水仙花数。

答案:1,结果输出:inSecondclass,因为 Second 继承First,并重写了aMethod()方法,所以调用的是子类重写的方法,因此输出 inSecondclass;

2,结果输出:welcome,因为changestr(String str)接受一个字符串,str是String的一个实例,将str传入changestr(String str),就是将str的引用传如此方法,修改了str的值,所以输出修改后的结果:welcome;

3,结果输出:abdcbdcb,因为for循环的执行过程是这样的:for(1;2;3),先执行1,然后执行2进行判断,为true则执行循环体,循环体结束执行3,然后执行2判断为true,在执行循环体,循环体结束在执行3,然后2……这样循环,1232323232……这样执行,1只执行一次,所以开始执行1:foo('a'); ,输出a,然后执行2: foo('b')&&(i<2); ,输出b,i=0<2为true,执行循环体,i++为1,输出d;然后执行3,输出c,然后执行2,输出b,i=1<2为true,执行循环题,i++为2,输出d;然后执行3,输出c,然后执行2,输出b,i=2<2为false,不执行循环体,结束,最后输出了一个\n换行。

 

第四题

1,


public class Cuboid {

 private int length;//长度
 private int width;//宽度
 private int height;//高度
 private int vol;//体积
 private int area;//表面面积
 
 public Cuboid(){
  vol=1;//体积初始值是1
 }
 
 //设置长宽高的方法
 public void setLength(int length) {
  this.length = length;
 }
 
 public void setWidth(int width) {
  this.width = width;
 }
 
 public void setHeight(int height) {
  this.height = height;
 }
 
 //计算体积
 public int getVol(){
  vol=length*width*height;
  return vol;
 }
 
 //计算表面积
 public int getArea(){
  area=(length*width+length*height+width*height)*2;
  return area;
 }
 
 //测试程序
 public static void main(String[] args){
  Cuboid r=new Cuboid();//创建一个长方体
  r.setLength(10);//设置长度
  r.setWidth(5);//设置宽度
  r.setHeight(6);//设置高度
  System.out.println("长方体的体积为:"+r.getVol());
  System.out.println("长方体的表面积为:"+r.getArea());
  
 }
}

2,


public class Triangle {

 public static void main(String[] args){
  for(int i=0;i<5;i++){
   for(int j=0;j<5+i;j++){
    if(j<5-i-1){
     System.out.print("  ");
     continue;
    }
    System.out.print("* ");
   }
   System.out.println();
  }
 }
}
3,


public class ShuiXianHua {

 public static void main(String[] args){
  for(int i=1;i<10;i++){
   for(int j=0;j<10;j++){
    for(int k=0;k<10;k++){
     if((i*i*i+j*j*j+k*k*k)==(i*100+j*10+k)){
      System.out.println(i*100+j*10+k+" ");
     }
    }
   }
  }
 }
}
有疑问再问我

 

1.inSecondclass  2.welcome 3.不会

上一个:学习.Net好还是Java好?以后的就业前景怎样?
下一个:为什么同样都是JAVA MIDP2.0的运行速度差距就那么大叻?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,