| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1102 人关注过本帖
标题:新手求助(关于一个使用位运算将十进制转化成二进制的问题)
只看楼主 加入收藏
lisanhu1
Rank: 2
等 级:论坛游民
帖 子:31
专家分:78
注 册:2010-6-24
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:2 
新手求助(关于一个使用位运算将十进制转化成二进制的问题)
程序代码:
#include <iostream>
using namespace std;
void decimalToBinary(int n);
int main (int argc, char const* argv[])
{
    int n=0;
    cin>>n;
    decimalToBinary(n);
    cout<<endl;
    return 0;
}
void decimalToBinary(int n)
{
    switch(n)
    {
        case 0:cout<<0;break;
        case 1:cout<<1;break;
        default:cout<<n%2;n=n>>1;decimalToBinary(n);break;
    }
}

我想做一个将十进制转化成二进制的程序,想了这样一个算法,主要是想用位运算符,现在的问题是输出的结果是倒的,有什么好的办法能让它正过来吗

[ 本帖最后由 lisanhu1 于 2011-3-19 04:23 编辑 ]
搜索更多相关主题的帖子: 十进制 二进制 
2011-03-19 03:23
lucky563591
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:765
专家分:2103
注 册:2009-11-18
收藏
得分:1 
在转换函数中不要输出,而是将数存储在数组中,然后再倒序输出数组。
收到的鲜花
  • lisanhu12011-03-19 17:00 送鲜花  1朵   附言:数组我也想过,不过有点麻烦,还有位数的限 ...
2011-03-19 08:50
玩出来的代码
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:河南新乡
等 级:贵宾
威 望:11
帖 子:742
专家分:2989
注 册:2009-10-12
收藏
得分:19 
程序代码:
if(n/2)
    decimalToBinary(n/2);
cout<<n%2;
收到的鲜花
  • lisanhu12011-03-19 16:58 送鲜花  5朵   附言:谢谢,这个比我的好多了

离恨恰如春草,更行更远还生。
2011-03-19 11:15
快速回复:新手求助(关于一个使用位运算将十进制转化成二进制的问题)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012035 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved