7.5 同步练习

  1. 编程题:水仙花数是一个三位数,三位数各位的立方之和等于三位数本身。使用while循环计算水仙花数

  2. 编程题:水仙花数是一个三位数,三位数各位的立方之和等于三位数本身。使用do while循环计算水仙花数。

  3. 编程题:水仙花数是一个三位数,三位数各位的立方之和等于三位数本身。使用for循环计算水仙花数。

  4. 编程题:编写程序输出以下形式的金字塔图案。

  1. **
  2. *****
  3. *******
  1. 能从循环语句的循环体中跳出的语句是(  )。

A. for语句   B. break语句   C. while语句   D. continue语句

  1. 若有如下循环语句,则循环体将被执行(  )。
  1. var x=5, y=20
  2. do{
  3. y-=x
  4. x++
  5. } while(++x < --y)

A. 0次   B. 1次   C. 2次   D. 3次

  1. 下列语句序列执行后,i的值是(  )。
  1. var i=16
  2. do {
  3. i/=2
  4. } while( i > 3 )

A. 16   B. 8   C. 4   D. 2

  1. 若有以下代码段:
  1. let m = ?
  2. switch m
  3. {
  4. case 0:
  5. println("case 0")
  6. case 1:
  7. println("case 1")
  8. case 2:
  9. println("case 2")
  10. fallthrough
  11. default:
  12. println("default")
  13. }

则下列m的哪些值将引起"default"的输出?

A. 0   B. 1   C. 2   D. 3

  1. 下列语句执行后,x的值是(  )。
  1. var a=3, b=4, x=5
  2. if ++a < b {
  3. x=x+1
  4. }

A. 5   B. 3   C. 4   D. 6

  1. 下列语句序列执行后,k的值是(  )。
  1. var i=6, j=8, k=10, n=5, m=7
  2. if i<j || m<n {
  3. k++
  4. } else {
  5. k--
  6. }

A. 9   B. 10   C. 11   D. 12

  1. 下列语句序列执行后,r的值是(  )。
  1. var ch = "8"
  2. var r = 10
  3. switch ch {
  4. case "7":
  5. r = r+3
  6. case "8":
  7. r = r+5
  8. case "9":
  9. r = r+6
  10. break;
  11. default:
  12. r = r+7
  13. }

A. 13   B. 15   C. 16   D. 10

  1. 下列语句序列执行后,j的值是(  )。
  1. var j=0,i=3
  2. for ; i>0; i-- {
  3. j+=i
  4. }

A. 5   B. 6   C. 7   D. 8

  1. 下列语句序列执行后,i的值是(  )。
  1. var i=10
  2. do {
  3. i-=2
  4. } while(i>6)

A. 10   B. 8   C. 6   D. 4

  1. 能构成多分支的语句是(  )。

A. for语句   B. while语句   C. switch语句   D. do while语句

  1. 以下for循环的执行次数是(  )。
  1. for(var x=0,y=0; (y == 0) && (x < 4); x++) {
  2. }

A. 无限次   B. 一次也不执行   C. 执行4次   D. 执行3次

  1. 以下由do while语句构成的循环执行的次数是(  )。
  1. var k = 0
  2. do {
  3. ++k
  4. } while ( k < 1 )

A. 一次也不执行     B. 执行1次

C. 无限次        D. 有语法错,不能执行

  1. 下列语句序列执行后,x的值是(  )。
  1. var a=3, b=4, x=5
  2. if ++a == b {
  3. x = ++a * x
  4. }

A. 35   B. 25   C. 20   D. 5

  1. 下列语句序列执行后,k的值是(  )。
  1. var i=6,j=8,k=10,m=7
  2. if i > j || m < k-- {
  3. k++
  4. } else {
  5. k--
  6. }

A. 12   B. 11   C. 10   D. 9

  1. 下列语句序列执行后,k的值是(  )。
  1. var j=8, k=15
  2. for var i=2; i != j; i++ {
  3. j -= 2
  4. k++
  5. }

A. 18   B. 15   C. 16   D. 17

  1. 下列语句序列执行后,j的值是(  )。
  1. var j=3, i=2
  2. while --i != i/j {
  3. j=j+2
  4. }

A. 2   B. 4   C. 6   D. 5

  1. 下列代码执行的结果是(  )。
  1. var x = 1, y = 6
  2. while y-- == 6 {
  3. x--
  4. }
  5. println("x= \(x) ,y = \(y)")

A. 程序能运行,输出结果:x=0,y=5   B. 程序能运行,输出结果:x=-1,y=4

C. 程序能运行,输出结果:x=0,y=4   D. 程序不能编译

  1. 下列语句序列执行后,k的值是(  )。
  1. var x=6, y=10, k=5
  2. switch x % y {
  3. case 0:
  4. k = x*y
  5. case 6:
  6. k = x/y
  7. fallthrough
  8. case 12:
  9. k = x-y
  10. fallthrough
  11. default:
  12. k = x*y-x
  13. }

A. 60   B. 5   C. 0   D. 54

  1. 以下由for语句构成的循环执行的次数是(  )。
  1. for var i = 0; true; i++ {
  2. }

A. 有语法错,不能执行   B. 无限次

C. 执行1次         D. 一次也不执行

  1. 简答题:请例举在switch中使用范围匹配。

  2. 简答题:请例举在switch中使用元组类型。