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) } } }
时间: 2024-03-08 07:45:21 浏览: 36
这是一个简单的 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 功能。
相关问题
使用go语言1. 请用循环语句实现以下圣诞树 2. 请编程实现从键盘输入一门课程成绩,为其分级,等级为优秀、良好、中等、及格和不及格。要求用两种方式实现:if...else if 方式和 switch case 方式。 1. 编程实现由键盘输入任意个数的整数,将其中的奇数和偶数构成两个切片输出。 2. 编程实现从键盘输入三个整数,用子函数方式求三个数的和及均值(浮点型),并打印输出。 3. 编程实现从键盘上输入若干整数,找出其中的素数,以切片的形式输出,并统计所有素数之和。 1. 编程实现带缓冲的从标准输入设备获取任意内容,以“#”结束输入,并打印输出。 2. 编程实现从键盘、文件、字符串等三个不同来源读取数据并打印输出。
1. 循环语句实现圣诞树:
```go
package main
import "fmt"
func main() {
var n int
fmt.Print("请输入圣诞树层数:")
fmt.Scan(&n)
for i := 1; i <= n; i++ {
for j := 1; j <= n-i; j++ {
fmt.Print(" ")
}
for k := 1; k <= i*2-1; k++ {
fmt.Print("*")
}
fmt.Println()
}
for i := 1; i <= n/3; i++ {
for j := 1; j <= n-2; j++ {
fmt.Print(" ")
}
fmt.Println("***")
}
}
```
2. 分级成绩:
- if...else if:
```go
package main
import "fmt"
func main() {
var score int
fmt.Print("请输入分数:")
fmt.Scan(&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 int
fmt.Print("请输入分数:")
fmt.Scan(&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("不及格")
}
}
```
3. 奇偶数切片:
```go
package main
import "fmt"
func main() {
var nums []int
var n int
fmt.Print("请输入整数个数:")
fmt.Scan(&n)
for i := 0; i < n; i++ {
var num int
fmt.Print("请输入一个整数:")
fmt.Scan(&num)
nums = append(nums, num)
}
var oddNums []int
var evenNums []int
for _, num := range nums {
if num%2 == 0 {
evenNums = append(evenNums, num)
} else {
oddNums = append(oddNums, num)
}
}
fmt.Println("奇数:", oddNums)
fmt.Println("偶数:", evenNums)
}
```
4. 求和和均值:
```go
package main
import "fmt"
func main() {
var a, b, c int
fmt.Print("请输入三个整数:")
fmt.Scan(&a, &b, &c)
sum := add(a, b, c)
avg := float64(sum) / 3
fmt.Println("和:", sum)
fmt.Println("均值:", avg)
}
func add(nums ...int) int {
sum := 0
for _, num := range nums {
sum += num
}
return sum
}
```
5. 素数切片:
```go
package main
import "fmt"
func main() {
var nums []int
var n int
fmt.Print("请输入整数个数:")
fmt.Scan(&n)
for i := 0; i < n; i++ {
var num int
fmt.Print("请输入一个整数:")
fmt.Scan(&num)
nums = append(nums, num)
}
var primeNums []int
var primeSum int
for _, num := range nums {
if isPrime(num) {
primeNums = append(primeNums, num)
primeSum += num
}
}
fmt.Println("素数:", primeNums)
fmt.Println("素数之和:", primeSum)
}
func isPrime(num int) bool {
if num <= 1 {
return false
}
for i := 2; i*i <= num; i++ {
if num%i == 0 {
return false
}
}
return true
}
```
6. 带缓冲的输入输出:
```go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
fmt.Println("请输入任意内容,以#结束输入:")
scanner := bufio.NewScanner(os.Stdin)
scanner.Split(bufio.ScanLines)
var input string
for scanner.Scan() {
line := scanner.Text()
if line == "#" {
break
}
input += line + "\n"
}
fmt.Println("您输入的内容是:")
fmt.Println(input)
}
```
7. 从不同来源读取数据:
```go
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
// 从键盘读取数据
fmt.Println("请从键盘输入一段文本:")
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
fmt.Println("您输入的内容是:", scanner.Text())
// 从文件读取数据
file, err := os.Open("test.txt")
if err != nil {
fmt.Println("打开文件失败:", err)
return
}
defer file.Close()
scanner = bufio.NewScanner(file)
var fileContent string
for scanner.Scan() {
fileContent += scanner.Text() + "\n"
}
fmt.Println("文件内容是:")
fmt.Println(fileContent)
// 从字符串读取数据
str := "这是一个字符串,用于测试。"
scanner = bufio.NewScanner(strings.NewReader(str))
var strContent string
for scanner.Scan() {
strContent += scanner.Text() + "\n"
}
fmt.Println("字符串内容是:")
fmt.Println(strContent)
}
```
go语言2. 请编程实现从键盘输入一门课程成绩,为其分级,等级为优秀、良好、中等、及格和不及格。要求用两种方式实现:if...else if 方式和switch case 方式。
使用 if...else if 方式实现:
```go
package main
import "fmt"
func main() {
var score int
fmt.Println("请输入一门课程成绩:")
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 int
fmt.Println("请输入一门课程成绩:")
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("成绩等级为:不及格")
}
}
```