4.7 同步练习
1. 下列程序段执行后,t5
的结果是( )。
var t1 = 9, t2 = 11, t3=8
var t4, t5 : Int
t4 = t1 > t2 ? t1 : t2+t1
t5 = t4 > t3 ? t4 : t3
A. 8 B. 20 C. 11 D. 9
2. 下列程序段执行后,b, x, y
的值分别是( )。
var x=6,y=8
var b : Bool
b = x > y && x++ == --y
A. true, 6, 8
B. false, 7, 7
C. true, 7, 7
D. false, 6, 8
3. 下列执行程序段后,b, x, y
的值分别是( )。
var x=6,y=8
var b : Bool
b = x++ == --y && x > y
A. true, 6, 8
B. false, 7, 7
C. true, 7, 7
D. false, 6, 8
4. 设有定义var x=3.5, y=4.6, z=5.7
,则以下的表达式中,值为true
的是( )。
A. x > y || x > z
B. x != y
C. z > ( y + x )
D. x < y && !( x > z )
5. 下列程序段执行后,b3
的结果是( )。
var b1 = true, b2, b3 : Bool
b3 = b1 ? b1 : b2
A.
0
B.1
C.true
D.false
E. 无法编译
6. 下列关于使用“<<
”和“>>
”操作符的结果正确的是( )。
A. 1010 0000 0000 0000 >> 4
的结果是0000 1010 0000 0000
B. 1010 0000 0000 0000 >> 4
的结果是1111 1010 0000 0000
C. 0000 1010 0000 0000 << 2
的结果是0010 1000 0000 0000
D. 0000 1010 0000 0000 << 2
的结果是0000 1010 0000 0000
7. 下列表达式中哪两个相对?
A. 16>>2
B. 16/2^2
C. 16*4
D. 16<<2
8. 下列程序段执行后,输出结果是( )。
提示:
String
是结构体,它是值类型。
var a :String = "123", b :String = "123"
println(a === b)
a = b
println(a === b)
A. false
B. false
C. true
D. true
false
true
true
false
E. 编译错误
9. 下列程序段执行后,输出结果是( )。
提示:
NSString
是类,它是引用数据类型。
var a :NSString = "123", b :NSString = "123"
println(a === b)
a = b
println(a === b)
A. false
B. false
C. true
D. true
E. 编译错误
false
true
true
false
- 下列程序段执行后,输出结果是( )。
var a1 :String = "123", b1 :String = "123"
var a2 :NSString = "123", b2 :NSString = "123"
println(a1 == b1)
println(a2 !== b2)
A. false
B. false
C. true
D. true
E. 编译错误
false
true
true
false