package main import "fmt" func main() { var x, y, z = 1, 3, 0 switch x + y%2 { case 0: x = 5 y = 7 case 1: x = 4 case 2: x = 9 y = 8 } fmt.Printf("%d,%d,%d\n", x, y, z) }为什么答案输出是9,8,0
时间: 2023-11-27 21:04:48 浏览: 35
在这段代码中,变量x被赋值为1,变量y被赋值为3,变量z被赋值为0。在switch语句中,表达式x+y%2的值为4,因此程序执行case 1:,将x的值赋值为4。因此,程序输出结果中x的值为4。
由于y没有被赋值,因此它的值保持不变,仍然是3。但是,当表达式的值为2时,程序将y的值赋为8,但是由于表达式的值为1,所以程序不会执行此分支。因此,程序输出结果中y的值为3。
z的值一开始被初始化为0,但是在switch语句中没有对它进行任何更改,因此输出结果中z的值仍然为0。
因此,最终输出结果为4,3,0。
相关问题
package main import "fmt" func main() { var i int for i := 0; i < 3; i++ { switch i { case 1: fmt.Printf("%d", i) case 2: fmt.Printf("%d\n", i) } } }
这是一个简单的 Go 语言程序,它会输出数字 1 和 2,分别在同一行和新的一行。程序中使用了一个 for 循环和一个 switch 语句。在 for 循环中,i 的初始值被赋为 0,每一次循环 i 的值都会递增 1,直到 i 等于 3 时循环结束。在 switch 语句中,根据 i 的值分别执行不同的 case 分支,当 i 等于 1 时输出 i 的值,当 i 等于 2 时输出 i 的值并换行。需要注意的是,在 switch 语句中的每个 case 后面不需要加 break 语句,因为 Go 语言中的 switch 语句默认自带 break 功能。
2.请go语言编程实现从键盘输入一门课程成绩,为其分级,等级为优秀、良好、中等、及格和不及格。要求用两种方式实现:if...else if 方式和switch case 方式。
if...else if方式实现:
```go
package main
import "fmt"
func main() {
var score float64
fmt.Print("请输入课程成绩:")
fmt.Scanln(&score)
if score >= 90 {
fmt.Println("成绩为优秀")
} else if score >= 80 {
fmt.Println("成绩为良好")
} else if score >= 70 {
fmt.Println("成绩为中等")
} else if score >= 60 {
fmt.Println("成绩为及格")
} else {
fmt.Println("成绩为不及格")
}
}
```
switch case方式实现:
```go
package main
import "fmt"
func main() {
var score float64
fmt.Print("请输入课程成绩:")
fmt.Scanln(&score)
switch {
case score >= 90:
fmt.Println("成绩为优秀")
case score >= 80:
fmt.Println("成绩为良好")
case score >= 70:
fmt.Println("成绩为中等")
case score >= 60:
fmt.Println("成绩为及格")
default:
fmt.Println("成绩为不及格")
}
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)