Problem M: 递归函数--进制转换(十进制转二进制)



Problem M: 递归函数–进制转换(十进制转二进制)

Time Limit: 1 Sec  
Memory Limit: 128 MB

Submit: 521  
Solved: 232

[
Submit][
Status][
Web Board]

Description

输入一个非负整数(十进制),调用递归函数输出此整数对应的二进制数。

函数声明如下:
void conversion(int n); //将n转换为二进制输出的递归函数声明

在以下程序的基础上,添加conversion函数的定义,使程序能够正确执行。
提交时,只需要提交conversion函数的定义代码即可。

#include <iostream>
using namespace std;
void conversion(int n); //将n转换为二进制输出的递归函数声明
int main()
{
  int a;
  cin>>a;
  conversion(a) ; //将n转换为二进制输出
  return 0;
}

Input

正整数

Output

对应的二进制数

Sample Input

6

Sample Output

110

HINT

提交时,只需要提交conversion函数的定义代码即可。

注意:该函数是不带无返回值的函数, 所以在函数体内要进行相应的输出

#include <iostream>
using namespace std;
void conversion(int n); //将n转换为二进制输出的递归函数声明
int main()
{
  int a;
  cin>>a;
  conversion(a); //将n转换为二进制输出
  return 0;
}
void conversion(int n)
{
    int i=1,a[99];
    if(n==0)cout<<0<<endl;
    else
    {
        while(n!=0)
    {
        a[i++]=n%2;
        n/=2;
    }
    n=i-1;
    for(i=n;i>=1;i--){cout<<a[i];}
    cout<<endl;}
}

    原文作者:进制转换
    原文地址: https://blog.csdn.net/wzy_112099/article/details/51044655
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞