scala中输入学生的姓名和成绩,直到用户输入一个特定的结束标志(例如,输入一个空白行)为止。
时间: 2024-09-20 12:02:57 浏览: 62
在Scala中,你可以使用`while`循环和`scala.io.StdIn.readLine()`函数来实现这个功能。这里是一个简单的示例:
```scala
import scala.io.StdIn
var name = ""
var score = 0.0
var isDone = false
while (!isDone) {
println("请输入学生姓名(输入空行结束):")
name = StdIn.readLine()
if (name.trim.isEmpty) {
isDone = true
} else {
println("请输入学生分数:")
score = Try(StdIn.readDouble()).getOrElse(0.0)
// 检查是否输入了有效的分数
if (score.isNaN || score.isInfinite) {
println("无效的分数,请输入数字。")
continue
}
println(s"${name} 的成绩是 ${score}")
}
}
println("数据录入完成.")
```
在这个例子中,我们不断读取用户的输入,如果遇到空行,就认为是结束标志。每次输入非空行时,我们会尝试获取分数,如果输入的是非法字符,则提示用户并继续下一轮。当你看到"数据录入完成."的时候,表示所有学生信息已录入完毕。
阅读全文