递归实现十进制转化二进制

2018-12-20  本文已影响0人  点一下我的id
#include<iostream>
using namespace std;
#define OK 1
typedef int Status;
Status conversion(int n)//假设输入是4,二进制是100
{
    if(n==0) return OK;
    else
    {//假设栈Stack为S
        int N=n%2;//第一次N=0,n=4/2=2;该程序的局部状态存入S(第一次,第二次N=0,第三次N=1)
        n/=2;
        conversion(n);
        cout<<N<<" ";//S(第一次,第二次,第三次)穿脱原理,先穿上第一次衣服,再穿第二次,最后穿第三次,那么脱衣服,先脱第三件
//1 0 0
    }
}
int main()
{
    int n;
    cin>>n;
    conversion(n);
}
上一篇 下一篇

猜你喜欢

热点阅读