Golang 004. 转换百分制分数
2023-09-14 09:01:29 时间
【基础入门题】Golang 004. 转换百分制分数
给出一个百分制成绩,要求输出等级为A,B,C,D,E。
90分以上即n>=90为A;80<=n<90分为B;以此类推;
直到n<60分全为E;如果输入小于0或大于100的分数,
则输出“Not valid”。
输入形式:输入一个可能带小数点的分数
输出形式:根据对应关系,输出五分制分数档。
方法一: if - else if - else
package main
import "fmt"
func Grade(m float32) string {
var result string
if m <= 100 && m >= 90 {
result = "A"
} else if m < 90 && m >= 80 {
result = "B"
} else if m < 80 && m >= 70 {
result = "C"
} else if m < 70 && m >= 60 {
result = "D"
} else if m < 60 && m >= 0 {
result = "E"
} else {
result = "Not valid"
}
return result
}
func main() {
fmt.Printf("Grade(%.1f) = %s\n", 80.5, Grade(80.5))
fmt.Printf("Grade(%d) = %s\n", 100, Grade(100))
fmt.Printf("Grade(%d) = %s\n", 105, Grade(105))
/* Out:
Grade(80.5) = B
Grade(100) = A
Grade(105) = Not valid
*/
}
方法二: switch - case - default,switch后无表达式
package main
import "fmt"
func Grade(m float32) string {
var result string
switch {
case m <= 100 && m >= 90:
result = "A"
case m < 90 && m >= 80:
result = "B"
case m < 80 && m >= 70:
result = "C"
case m < 70 && m >= 60:
result = "D"
case m < 60 && m >= 0:
result = "E"
default:
result = "Not valid"
}
return result
}
func main() {
fmt.Printf("Grade(%.1f) = %s\n", 80.5, Grade(80.5))
fmt.Printf("Grade(%d) = %s\n", 100, Grade(100))
fmt.Printf("Grade(%d) = %s\n", 105, Grade(105))
/* Out:
Grade(80.5) = B
Grade(100) = A
Grade(105) = Not valid
*/
}
方法三: switch - case - default,switch后有表达式
package main
import "fmt"
func Grade(m float32) string {
var result string
if m > 100 || m < 0 {
return "Not valid"
}
switch int(m) / 10 {
case 10, 9:
result = "A"
case 8:
result = "B"
case 7:
result = "C"
case 6:
result = "D"
default:
result = "E"
}
return result
}
func main() {
fmt.Printf("Grade(%.1f) = %s\n", 80.5, Grade(80.5))
fmt.Printf("Grade(%d) = %s\n", 100, Grade(100))
fmt.Printf("Grade(%d) = %s\n", 105, Grade(105))
}
相关文章
- mysql executereader_ExecuteReader()对象不能被转换
- Tipard Blu-ray Converter for Mac (蓝光视频转换软件)v10.0.30激活版
- js 快速将日期格式转换为时间戳
- Permute 3 for mac(图片音视频格式转换)
- Java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)详解编程语言
- 函数Linux C中转换Int为字符串的itoa函数(linuxcitoa)
- MySQL转换整数:解决方案(mysql转整数)
- Oracle 将列转换为行的SQL语句(oracle列转行SQL)
- 轻松实现MSSQL日期类型转换(日期转换 mssql)
- 解决MSSQL数据库转换的最佳实践(怎么转mssql数据库)
- SQL Server快速转换,提高效率(sqlserver秒转化)
- MySQL转换至MSSQL:一次成功的迁移过程(mysql转成mssql)
- 使用PHP和XSLstylesheets转换XML文档
- XSL简明教程(2)XSL转换
- Ruby中关于日文转UTF-8及半角全角转换的技巧
- Android-如何将RGB彩色图转换为灰度图方法介绍
- js实现json数据行到列的转换的实例代码