例子

  • 输入decimal_num = 13 => 输出= 8+4+1 => 1101

  • 输入 decimal_num = 11 => 输出 = 8+2+1 => 1011

解决这个问题的方法

  • 第 1 步:定义一个接受十进制数的函数,decimal_num,类型为int

  • 步骤 2:定义一个数组来存储十进制数除以 2 的余数。

  • 第 3 步:开始for循环,直到十进制数变为 0。

  • 第 4 步:以相反的顺序打印二进制数组。

程序

package main
import (
   "fmt"
)

func decimalToBinary(num int){
   var binary []int

   for num !=0 {
      binary = append(binary, num%2)
      num = num / 2
   }
   if len(binary)==0{
      fmt.Printf("%d\n", 0)
   } else {
      for i:=len(binary)-1; i>=0; i--{
         fmt.Printf("%d", binary[i])
      }
      fmt.Println()
   }
}

func main() {
   decimalToBinary(87)
   decimalToBinary(10)
   decimalToBinary(31)
   decimalToBinary(0)
}
输出结果
1010111
1010
11111
0