列表

详情


GP46. 体温异常

描述

实现一个函数,该函数的功能是 给定一个float类型变量表示某个人的体温,如果有人体温大于37.5,抛出"体温异常",并输出。

知识点:

Go中可以抛出一个panic的异常,然后在defer中通过recover捕获这个异常,然后正常处理。


示例1

输入:

38.000000

输出:

"体温异常"

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Go 解法, 执行用时: 3ms, 内存消耗: 836KB, 提交时间: 2022-06-23

package main
// import "fmt"

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param t double浮点型 体温
 * @return string字符串
*/
func temperature( t float64 ) (ans string) {
    // write code here
    ans = ""
    defer func(){
        if err:=recover();err!=nil{
            ans = "体温异常"
        }
    }()
    
    if t > 37.5 {
        panic("体温异常")
    }
    return ans
}

Go 解法, 执行用时: 3ms, 内存消耗: 848KB, 提交时间: 2022-06-09

package main;
func temperature(t float64) string {
	if t <= 37.5 {
		return ""
	}
	return "体温异常"
}

Go 解法, 执行用时: 3ms, 内存消耗: 860KB, 提交时间: 2022-06-27

package main
//import "fmt"

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param t double浮点型 体温
 * @return string字符串
*/
func temperature( t float64 ) (ans string) {
    // write code here
    defer func(){
        if r := recover() ; r != nil {
            ans = "体温异常"
        }
    }()
    if t > 37.5 {
        panic("体温异常")
    }else{
        ans = ""
    }
    return
}

Go 解法, 执行用时: 3ms, 内存消耗: 864KB, 提交时间: 2022-06-30

package main

import "fmt"

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 *
 * @param t double浮点型 体温
 * @return string字符串
 */
func temperature(t float64) (ret string) {
	defer func() {
		if err := recover(); err != nil {
			ret = fmt.Sprintf("%s", err)
		}
	}()
	if t > 37.5 {
		panic("体温异常")
	}
	return ret
}

Go 解法, 执行用时: 3ms, 内存消耗: 872KB, 提交时间: 2022-07-19

package main

import "fmt"

//import "fmt"

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 *
 * @param t double浮点型 体温
 * @return string字符串
 */

func temperature(t float64) (ans string) {
	// write code here
	defer func() {
		if err := recover(); err != nil {
			ans = fmt.Sprintf("%s", err)
		}
	}()

	if t > 37.5 {
		panic("体温异常")
	}
	return ans
}

上一题