内容发布更新时间 : 2024/12/26 2:18:46星期一 下面是文章的全部内容请认真阅读。
}
A.10 B.9 C.11 D.编译错误
17.下列代码编译运行的结果是( a) public static void main(String[] args) { int e =12,f=13;
if(++e==13||f++==14){ System.out.print(\ }
System.out.print(e+\ int g=12,h=13;
if(++g==13|++h==14){ System.out.println(\ } }
A.c 13 13 d B.c 13 13 C.c 13 14 d D.13 13 d
18.下面代码编译运行的结果是(b ) public static void main(String[] args){ double s1 = 5/2;
System.out.println(s1+\
double s2 = 5/2.0;
} A. 2 2.5 B. 2.0 2.5 C. 2.0 2.0 D. 2.5 2.5
19.声明一个数组 int[] arr = new int[10] 下面说法正确的是(d) A.arr[0]的值未定义 B.arr[10]的值为 0
C.arr 数组的长度为 arr.length-1 D.arr[3]的值为 0
20.下面方法定义正确的是(abd ) A.public void test(){ }
B.public static void test(String name){ System.out.println(name); }
C.public int test( ){ return 0.0; }
D.public double test(int d){
return d++; }
二.问答题( 共 10 分 ) 1.八种基本数据类型分别是什么
byte、short、int 、long 、float 、double 、char 、boolean
2.java 文件编译运行的过程是怎么样的 ;JDK,JRE,JVM 分别是什么, 彼此之间的关系是怎么样的?(5分)
首先,编译,Java 源文件(*.java)经过Java的编译器编译成Java字节码文件(*.class);然后,运行,先进行类加载和字节码校验,之后,Java字节码经过JVM解释为具体平台的具体指令,并执行。 1.JVM -- java virtual machine
JVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。 2.、JRE -- java runtime environment
JRE是指java运行环境。光有JVM还不能成class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。在JDK的安装目录里你可以找到jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和lib和起来就称为jre。所以,在你写完java程序编译成.class之后,你可以把这个.class文件和jre一起打包发给朋友,这样你的朋友就可以运行你写程序了。(jre里有运行.class的java.exe)
3、JDK -- java development kit
JDK是java开发工具包,基本上每个学java的人都会先在机器上装一个JDK,那他都包含哪几部分呢?让我们看一下JDK的安装目录。在目录下面有六个文件夹、一个src类库源码压缩包、和其他几个声明文件。其中,真正在运行java时起作用的是以下四个文件夹:bin、include、lib、jre。现在我们可以看出这样一个关系,JDK包含JRE,而JRE包含JVM。 三.填空题( 10分/题, 共 30 分 )
1.打印出所有的“水仙花数”,所谓“所谓水仙花数”是指一个三位数,其个位数字的立方和等于该数本身.例:153是一个”水仙花数”,因为153=1三次方+5的
三次方+3的三次方;
for(int i = 100 ; i<1000 ; i++){ int a = i/100; int b = (i/10);
int c = i % 10 ; //i-100*a-10*b if(i == a*a*a + b*b*b + c*c*c){ System.out.println(i); } }
2.定义一个长度为10的数组并随机给数组赋值,赋值后输出当前数组,再使用冒泡排序降序输出。
int[] a = new int[10];
for(int i = 0 ;i System.out.println(Arrays.toString(a)); for(int j = 0 ; j < a.length;j++){ //a.length for(int k = 0; k a[k]=a[k+1]; a[k+1]=t; } } } System.out.println(Arrays.toString(a)); 3.从控制台输入一个大于 2 位数的数字, 通过算法让其数字反转,如 输入数字 123456 ,反转后的数字为 654321 Scanner in=new Scanner(System.in); System.out.println(\请输入一个整数:\); int n=in.nextInt(); int sum=0; while(n>0){ int d=n; sum=sum*10+d; n=n/10; } System.out.println(sum);