1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| package main
import "fmt"
func reverse(x int) int { result := 0
for x != 0 { digit := x % 10 x /= 10
if result > (1<<31-1)/10 || (result == (1<<31-1)/10 && digit > 7) { return 0 } if result < (-1<<31)/10 || (result == (-1<<31)/10 && digit < -8) { return 0 }
result = result*10 + digit }
return result }
func main() { num := 12345 reversed := reverse(num) fmt.Printf("整数 %d 的反转结果是 %d\n", num, reversed) }
|