一、單項選擇題 1.以下()不是Java的原始數據類型。 A.short B.boolean C.String D.float Java的原始數據類型一共就8個,分別是:byte、short、int、long、boolean、char、float、double。 2.請分析下列的Java定義正確的是 ...
一、單項選擇題
1.以下()不是Java的原始數據類型。
A.short B.boolean C.String D.float
Java的原始數據類型一共就8個,分別是:byte、short、int、long、boolean、char、float、double。
2.請分析下列的Java定義正確的是(B)
A.public static float _num = 32.5 ;
B.public static int num=20;
C.public String name=’張三’;雙引號
D. public int $_2 = 3.14;
3. 編譯Java源程式文件將產生相應的位元組碼文件,這些位元組碼文件和源文件的擴展名分別為( B )
A. .java和.class B. .class 和 .java C. .html 和 .java D. .class 和 .exe
4.一個Java 源程式名為MyClass.java,下列在該文件中定義public修飾的類名正確的是(D)
A、myClass B、MYCLASS C、myclass D、MyClass
5.下列聲明哪個是錯誤的( A )
A、int i = 1.0f; B、float f = 1;
C、double d = 34.4; D、long m = 4990;
float a = 1;這裡的1是整形,當賦值給一個float時,存在一個隱式轉換,不損失精度。
float a = 1f;1f就是float類型的。
如果你這樣定義 f
float f = 1.0;
肯定會出錯。 因為1.0預設是double類型的。double範圍比float大。為了不損失精度,不會自動轉換。這是必須這樣寫
float f = 1.0f;
一般一個數如果沒有加什麼的是預設int類型,然後回自動轉換成float。
而後面加f表示這個是一個float數,
一個小數預設是double,而那時候你賦值給float就不行了,必須加這個了,好像是這個只能往大範圍轉換,小範圍轉換就需要輔助的
6.以下for迴圈的執行次數是( B )
for(int x=0;(x==0)&(x>4);x++){
}
A、無限次 B、一次也不執行 C、執行4次 D、執行3次
//& : 每一位都比較,有0則0,無0則1.
7.以下方法聲明正確的是(C)
A. public int show(double a){ return a;} B. public static show(){ }
C. public void show() { return ; } D. public String show(){ }
Java void :可以寫return;表示程式結束,但是沒有返回值
8.在A類中定義一個method()方法,使其可以通過類名直接調用,即A.method(),下列方法定義符合要求的是( A )
A、static void method( ){} B、public void method( ){}
C、int method( ){} D、method( ){}
(概念)static表示“全局”或者“靜態”的意思,用來修飾成員變數和成員方法,也可以形成靜態static代碼塊,但是Java語言中沒有全局變數的概念。
(概念)用public修飾的static成員變數和成員方法本質是全局變數和全局方法,當聲明它類的對象市,不生成static變數的副本,而是類的所有實例共用同一個static變數。
9. Java方法定義中void 的含義( C )
A. 方法體為空
B. 定義的方法沒有形參
C. 定義的方法沒有返回值
D. 方法的返回值不能參加算術運算
10. 在JAVA中,下麵關於方法說法不正確的是(B)
A.方法無返回值用return
B.方法有返回值用void修飾
C.方法有返回值用return返回
D.有參方法,參數之間用逗號分隔
11. 以下代碼執行的結果:(B)
int x = 3 , y = 5 , z = 1;
int result=--z>y++?x+y++:++z;
System.out.println(result);
A. 3 B. 1 C. 0 D. 2
12. 分析如下Java程式段,程式編譯運行結果是(C)。
public class A {
public static void main(String[] args) {
int num=0;
switch(num){
default:
System.out.println("Default");
num++;
case 1:
System.out.println("num="+ num);
num+=2;
case 2:
System.out.println("num=" + ++num);
break;
case 3:
System.out.println("num="+ ++num);
break;}
}
}
A. 輸出:Default
num=1
num=3
B.輸出:Default
C. 輸出:Default
num=1
num=4
D. 程式編譯出錯
13.在JAVA中,( B ) 關鍵字用來終止本次迴圈語句。
A.return B.continue C.break D.exit
continue是跳出該迴圈進入下一個迴圈,break是跳出迴圈體,執行迴圈外的函數體,return是跳出整個函數體,函數體後面的部分也不執行
14、給定一個java源程式Test.java ,在命令行中,使用下麵( A )語句可以編譯、運行該程式。
A.javac Test.java,java Test B.javac Test.java,java Test.class
C.java Test.java ,javac Test D.java
Testjava ,javac Test.class
15.給定java代碼,如下:
public int count(int b1,double b2){
return______;
}
要使用這段代碼能夠編譯成功,橫線處可以填入(D)。
A. (double) b1/b2 B.(int) b1-b2 C.b1-b2 D. b1-(int)b2
https://www.cnblogs.com/liujinhong/p/6005714.html
16、在JAVA中,無論測試條件是什麼,下列( B )迴圈將至少執行一次。
A、for B、do…while C、while D、while…do
17.關於Java中的垃圾回收器,下列說法正確的是(D)
A.垃圾回收器可以及時清理垃圾
B. 垃圾回收器只有通過調用System.gc()方法後才可以清理垃圾
C. 程式員既可以自行清理垃圾,也可以通過垃圾回收器清理
D. 垃圾需要通過垃圾回收器清理,程式員無法干預
https://www.cnblogs.com/xumaodun/p/4876110.html
二.填空題
1. 以下標識符正確的是: 23
① 1_str ② _name ③ $a ④ @str ⑤ 7a ⑥ str_%@
2. 設x和y均為int型變數,則以下語句:x+=y;y=x-y;x-=y;實現的功能是__X與y數值轉換__
2. 已知有如下的二進位: 01010111 ,則轉換成十進位為:___87____
3. 在Java的基本數據類型中,char型採用Unicode編碼方案,每個Unicode碼占用_____2_____位元組記憶體空間,這樣,無論是中文字元還是英文字元,都是占用______2______位元組記憶體空間。char類型數據的取值範圍是 : 0~ 65535
unicode是不定長度的字元表達方式。
也就是說,一個字元可能是一個位元組,也可能是2個位元組,也可能有多個位元組。
但是java的預設位元組輸出方式是utf-8,也就是固定的2個位元組長度。
utf-8是unicode的一種存儲方式。
三.簡答題
1.簡述執行Java程式的三個步驟?
答: ①編寫源程式
②編譯源程式生成位元組碼文件
③執行程式
五.編程題
import java.util.Scanner;
/*
3.輸入一個正整數repeat (0<repeat<10),做repeat次下列運算:
輸入一個正整數n,如果它是素數,輸出"YES",否則,輸出"NO"
(素數就是只能被1和自身整除的正整數,1不是素數,2是素數)。
要求定義並調用函數prime(m)判斷m是否為素數。
例如:
輸入
4 (repeat=4) 意思就是重覆4次
然後輸入:
1
NO (1不是素數)
2
YES (2是素數)
9
NO (9不是素數)
17
YES (17是素數)
* */
public class demo01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("請輸入一個範圍在0到10之間,且不包含0和10的正整數:");
int repeat = sc.nextInt();
if(repeat>0&&repeat<10){
for(int j = 0 ; j < repeat ; j++){
Scanner input = new Scanner(System.in);
System.out.println("然後請輸入一個正整數:");
int n = input.nextInt();
// System.out.println(n);
prime(n);
System.out.println("------------end-----------");
}
}else{
System.out.println("輸入有誤!");
}
}
public static void prime(int m){
boolean stutas = true;
for(int i = 2; i<m;i++){
if(m%i==0){
stutas = false;
}
}
if(stutas == true&&m!=1){System.out.println(m+"是素數");}
else{System.out.println(m+"不是素數");}
}
}