
这是递归,每次调用x的值就会减半,当x/2等于0的时候,递归结束,然后再一层层回到起点
这里你的答案是 1 1 0 0,因为函数调用顺序是Bin(12) <- Bin(60) <- Bin(3) <- Bin(1)
这是嵌套的知识,类似于下图
输入为:abc.
输出的结果为:.cba
- char类型为字符类型,所以cin >> ch,实际上每次只能输入一个字符,而abc.是四个字符,所以其实一共有四次输入
- 这是个嵌套函数,也就是说fun实际被调用了四次
- 程序的执行肯定是上一步结束了,才能进行下一步的执行,这就意味着fun();后面的cout语句必须等fun执行完毕了才能执行
- 执行流程如下图


把结构写完整,答案就是1,没有else,每一次递归的printf都会运行,所以原题的答案是1 1 0 0