循环的灵活应用

25 阅读1分钟

结构分类

1.顺序结构

2.选择结构

3.循环结构

1.如何把“i miss you”重复输出3000次?

object bcia01 {
  def main(args: Array[String]): Unit = {
    // while 循环(重复做)
    var i=0
    while(i < 3000){
      println(s"${i},I miss you!")
      i+=1
    }
    println("循环结果")
  }
}

2.输出1-100以内的奇数,每个一行

方法一

object bais02 {
  def main(args: Array[String]): Unit = {
    var i = 1
    while(i <= 100){
      println(i)
      i+=2
    }
  }
}

方法二

object bais02 {
  def main(args: Array[String]): Unit = {
    //i:循环变量,控制循环执行次数的变量。一般设置为i。
    var i = 1
    while(i <= 100){
      if(i%2==1){
        println(i)
      }
      i+=1
    }
  }
}

3.1+2+3+4+5...+100的结果

object bais03 {
  def main(args: Array[String]): Unit = {
    var sum=0
    var i=1
    while(i<=100){
      sum=sum+i
      i+=1
    }
    println(sum)
  }
}

4.在需要一直执行的时候,就可以使用死循环。例子:不停判断用户输入的年份是否闰年。

object bais04 {
  def main(args: Array[String]): Unit = {
    while(true){
      print("请输入年份:")
      var year = scala.io.StdIn.readInt()
      if(year%400==0 || year%4==0 && year%100!=0){
        println(s"$year 是闰年")
      }else{
        println(s"$year 不是闰年")
      }
    }
  }
}

5.break停止循环

import scala.util.control.Breaks.{break, breakable}

object bais05 {
  def main(args: Array[String]): Unit = {
    breakable{
      while(true){
        print("请输入年份:")
        var year = scala.io.StdIn.readInt()

        if (year==0){
          print("结束循环")
          break
        }
        if(year%400==0 || year%4==0 && year%100!=0){
          println(s"$year 是闰年")
        }else{
          println(s"$year 不是闰年")
        }
      }
    }
    println("欢迎下次光临")
  }
}