问题描述:
输入一个整数 n,要求输出对应的二进制形式,请用递归函数实现。
代码:
/*
*copyright (c) 2014,烟台大学计算机学院
*all rights reserved.
*文 件 名 : 递归解决问题系列.cpp
*作 者 :张 鹏
*完成日期 :2014年11月15号
*版 本 号 :v1.3
*
*问题描述 :编制递归函数 fib(int n)返回第 n个 Fibnacci 数,以此输出 Fibnacci 序列的第 20 个数。
*输入描述 :无
*程序输出 :输出 Fibnacci 序列的第 20 个数。
*/
#include <iostream> //预处理指令。.
using namespace std; //使用C++的命名空间 std。
void dec2bin(int n); //声明自定义函数,用于求斐波那契数。
int main()
{
int n;
cout<<"请输入一个整数:";
cin>>n;
do
{
cout<<n<<"对应的二进制形式为:";
dec2bin(n); //输出n对应的二进制串
cout<<endl;
cout<<"请按ctrl+z退出"<<'\n';
cout<<"继续使用,请输入数:";
}
while (cin>>n);
return 0;
}
void dec2bin(int n)
{
int c;
if ((n/2)<=0)
c=0;
else
dec2bin(n/2);
cout<<n%2;
}
运行结果: