零、單選
- 以下字符型字面值中,不合法的是?
A. ‘@’
B. ‘&’
C. “M”
D. ‘課’
答案與解析:本題考查字符型字面值的表示,字符型字面值是用單引號引起來的,並且單引號裏面只能有一個字符,可以是漢字。因此ABD選項的內容是正確的。用雙引號引起來的是字符串字面值,因此C選項的內容是不合法的,本題選不合法的字符型字面值表示,所以選C。
- 以下哪個選項是字符型字面值的正確表示方式?
A. F
B. ‘F’
C. ‘EF’
D. “AB”
答案與解析:本題考查字符型字面值的表示方式,其正確表示是:用單引號引起來,並且只能有一個字符,因此B選項正確。A選項沒有單引號,C選項單引號引起來的有兩個字符,D選項用雙引號引起來兩個字符,是字符串的表示方式。
- 下列的變量定義中,錯誤的是?
A. int a;b;
B. float a,b1=1.23f;
C. char ch1=‘a’,ch2=’\n’;
D. int n=100,m=2,k;
答案與解析:本題考查變量的定義,同時定義多個變量時,變量名間用逗號分隔,因此A選項的說法是錯誤的。其他幾個選項都是正確的變量定義形式。
- 下列的變量定義中,正確的是?
A. boolean b=”false”
B. float f=5.6;
C. byte x=343;
D. double d=5.3f;
答案與解析:本題考查變量的定義。A選項錯誤,布爾類型的字面值,不能加雙引號。B選項,float f=5.6;該條語句錯誤,5.6是double類型字面值,賦值給float類型會報錯。C選項,343超出了byte類型的數據表示範圍,因此byte x=343會發生編譯錯誤。把float類型的字面值賦值給double類型的變量是可以的,因此D選項double d=5.3f是正確的。
一、多選
- 以下哪兩個是合法的字符串字面值?
A. “”
B. ‘ab’
C. ‘a’
D. “\u0067”
答案與解析:本題考查字符串字面值的表示,字符串字面值應該用雙引號引起來。BC選項用的是單引號,所以不正確。A選項是表示空字符串。D選項是字符串裏只有一個Unicode表示的字符,也就是相當於字符串中只有一個字符的情況。
- 以下哪兩條語句是正確的?
A. char ch=65539;
B. int n=5.6f;
C. double d=1.2f;
D. double d=1.23;float f=(float)d;
答案與解析:本題考查數據類型的轉換。A選項,65539超出了字符型所表示的數據範圍,因此該條語句是錯誤的。B選項,將float類型的數據賦值給int類型也會報錯。C選項,可以將float類型數據賦值給double類型變量,會進行自動類型轉換。D選項將double類型數據賦值給float類型變量,進行了強制類型轉換是可以的。