if语句练习及二进制转换

50 阅读1分钟
  1. 按位与(&)

    • 对两个操作数的每个二进制位执行与操作,只有当两个位都为 1 时结果才为 1

    scala

    val a = 6  // 二进制: 110
    val b = 3  // 二进制: 011
    println(a & b)  // 结果: 2 (二进制: 010)
    
  2. 按位或(|)

    • 对两个操作数的每个二进制位执行或操作,只要有一个位为 1 结果就为 1

    scala

    val a = 6  // 110
    val b = 3  // 011
    println(a | b)  // 结果: 7 (111)
    
  3. 按位异或(^)

    • 对两个操作数的每个二进制位执行异或操作,当两个位不同时结果为 1

    scala

    val a = 6  // 110
    val b = 3  // 011
    println(a ^ b)  // 结果: 5 (101)
    

屏幕截图 2025-09-17 085716.png

屏幕截图 2025-09-17 092546.png

&& 的优先级高于||

val result=10-2+3*4/2
println(result)

val a=true
val b=false
val c=false
println(a || b && c)

image.png

各个数字类型是有上线的,超过数字上线便会报错

val f=2147483647
    val d=1
    val e=(f+d)/2
    println(e)

image.png

 println("请输入年龄")
  val age=scala.io.StdIn.readInt()
  if(age>=18){
    println("成年")
  }else{
    println("未成年")
  }
}

image.png

println("请输入正方形的边长")
  val zb=scala.io.StdIn.readInt()
  println("请输入长方形的长")
  val cc=scala.io.StdIn.readInt()
  println("请输入长方形的宽")
  val ck=scala.io.StdIn.readInt()
  if(ck*cc>zb*zb){
    println("RECTANGLE")

  }else if (ck*cc<zb*zb){
    println("SQUARE")
  }else{
    println("SAME")
  }
}

输入你的成绩,输出对应的等级,【90,100,】,“A” 【80,89】,“B”,【70,79】,“C”’,【60,69】,“D”,【0,59】,“E”

print("请输入你的分数")
val cj =scala.io.StdIn.readInt()
if (cj>=90){
  println("A")
}else if(80<=cj && cj<=89){
  println("B")
}else if(cj>=70 && cj<=79){
  println("C")
}else if(cj>=60&& cj<=69){
  println("D")
}else{
  println("E")
}