源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C++ 十进制转换为二进制的实例代码

  • 时间:2020-06-05 02:19 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C++ 十进制转换为二进制的实例代码
题目内容:将十进制整数转换成二进制数。 输入描述:输入数据中含有不多于50个的整数n(-231<n<231)。 输出描述:对于每个n,以11位的宽度右对齐输入n值,然后输出“-->”,再然后输出二进制数。每个整数n的输出,独立占一行。 题目分析:将某个数从十进制转为二进制的具体方法是,该数对2取余,结果要么为1要么为0,此为该数对应二进制的末位;然后该数除以二,得到的商再次对2取余,结果为对应二进制的倒数第二位……以此类推,知道除以2的结果为0。 参考代码:
[u]复制代码[/u] 代码如下:
#include <iostream> #include <fstream> #include <string> #include <algorithm> using namespace std; string s; int main(int argc,char * argv[]) {     int n;     while(cin>>n)     {         if(n==0)         {                 cout<<"          0-->0\n";                 continue;         }         s=" ";         for(int a=n;a;a=a/2)         {                 s=s+(a%2?'1':'0');         }         std::reverse(s.begin(),s.end());         const char *sss=s.c_str();         cout.width(11);         cout<<n<<(n<0?"-->-":"-->")<<sss<<"\n";     }     system("pause");     return 0; }
效果如图: [img]http://files.jb51.net/file_images/article/201310/20131022150901094.png[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部