go 语言控制流程面试样题

以下是一道Go语言控制流程面试样题及详细回答:

题目:给定一个整数n,输出从1到n的所有奇数。

解题思路:可以使用for循环和if语句来实现。首先使用for循环遍历从1到n的所有整数,然后使用if语句判断当前整数是否为奇数,如果是则输出。

代码实现:

func printOddNumbers(n int) {
    for i := 1; i <= n; i++ {
        if i%2 == 1 {
            fmt.Println(i)
        }
    }
}

解释:首先使用for循环遍历从1到n的所有整数,然后使用if语句判断当前整数是否为奇数,如果是则使用fmt.Println函数输出。

注意事项:在面试中,需要注意代码的可读性和健壮性,例如对于输入为负数的情况需要进行特判。同时也需要注意代码的效率和性能,例如可以使用位运算来判断奇偶性,提高代码的执行效率。