當前位置:編程學習大全網 - 網站源碼 - c語言:將十進制正整數轉成二進制後輸出。圖中源代碼的遞歸函數是怎麽實現的?看不懂,求詳細點指教..

c語言:將十進制正整數轉成二進制後輸出。圖中源代碼的遞歸函數是怎麽實現的?看不懂,求詳細點指教..

如果n為13,二進制為1101

那麽程序執行是這樣的:

dtob(13)

{

13的二進制為1101,去掉最後壹位後變成110,即13/2=6,進行dtob(6)

輸出最後壹位1,即13%2=1

}

dtob(6)

{

13的二進制為110,去掉最後壹位後變成11,即6/2=3,進行dtob(3)

輸出最後壹位0,即6%2=0

}

dtob(3)

{

13的二進制為11,去掉最後壹位後變成1,即3/2=1,進行dtob(1)

輸出最後壹位1,即3%2=1

}

dtob(1)

{

13的二進制為1,去掉最後壹位後沒有了

輸出最後壹位1,即3%2=1

}

最後就是

dtob(13)

{

dtob(6)

{

dtob(3)

{

dtob(1)printf?1?-------1

printf?1?--------------1

}

printf?0?-------------------0

}

printf?1?-----------------------1

}

  • 上一篇:如何使用沂蒙操盤手手機版主版中的交易線和主力資金兩個功能?
  • 下一篇:matlab中stepseq函數不能直接用嗎
  • copyright 2024編程學習大全網