提示用户输入用户姓名、所在班级及语文、数学、英语成绩,程序输出成绩总和及平均成绩。用go语音
时间: 2024-09-06 17:01:22 浏览: 35
在Go语言中,您可以使用`fmt`包来提示用户输入数据,并使用`os`包读取用户的输入,然后将这些数据进行处理以计算总和和平均分。以下是一个简单的程序示例:
```go
package main
import (
"bufio"
"fmt"
"os"
"strconv"
)
func main() {
// 创建一个用于输入的读取器
reader := bufio.NewReader(os.Stdin)
// 提示用户输入姓名
fmt.Print("请输入您的姓名:")
name, _ := reader.ReadString('\n')
name = name[:len(name)-1] // 去除末尾的换行符
// 提示用户输入班级
fmt.Print("请输入您所在的班级:")
class, _ := reader.ReadString('\n')
class = class[:len(class)-1] // 去除末尾的换行符
// 提示用户输入各科成绩并转换为整数
fmt.Print("请输入您的语文成绩:")
chineseScore, _ := strconv.Atoi(reader.ReadString('\n')[0:len(class)-1])
fmt.Print("请输入您的数学成绩:")
mathScore, _ := strconv.Atoi(reader.ReadString('\n')[0:len(class)-1])
fmt.Print("请输入您的英语成绩:")
englishScore, _ := strconv.Atoi(reader.ReadString('\n')[0:len(class)-1])
// 计算总分和平均分
totalScore := chineseScore + mathScore + englishScore
averageScore := float64(totalScore) / 3
// 输出总分和平均分
fmt.Printf("姓名:%s\n", name)
fmt.Printf("班级:%s\n", class)
fmt.Printf("总分:%d\n", totalScore)
fmt.Printf("平均分:%.2f\n", averageScore)
}
```
在这个程序中,我们首先通过`fmt.Print`函数向用户展示了输入提示。使用`bufio.NewReader(os.Stdin)`来读取用户的输入。接着,我们利用`strconv.Atoi`函数将输入的字符串转换为整数。最后,我们将语文、数学和英语成绩相加得到总分,再通过除以3来计算平均分。
请注意,错误处理在实际代码中是非常重要的,但是为了简化示例,这里省略了错误处理的细节。
阅读全文