当前位置:首页 > 编程学习 > C++实现十进制转换为二进制

C++实现十进制转换为二进制

编程学习2007-06-1762880

这个写得有些早了,学习c++是写的。
现在看到很多帖子问这个问题,把这个贴上来供大家参考下。


/*
* FileName: bin.cpp
*
* 转换十进制为二进制
*
* Apull
*  2005-12-2
*/
       
#include <iostream>
#include <cstdlib>
using namespace std;
       
const int size = sizeof(int) * 8;
       
char* itobin(char *p, int a)
{
    int count = 0, j;
    p += (size + 1);
    *p-- = '\0';
    while(a)
    {
        j = 1 & a;
        *p-- = j + '0';
        count++;
        if  (count >= size)
            break;
        a >>= 1;
    }
    return ++p;
}
       
int main(void)
{
    int num;
    char bin[size + 1], *p;
    cout  << "转换十进制为二进制\n输入整数:\n";
    while(cin >> num)
    {
        if (!num)
            break;
        else
            p = itobin(bin, num);
       
        cout <<  "Dec: " << num << "\tBin: " << p <<  endl << endl;
    }
    system("pause");
    return 0;
}




扫描二维码推送至手机访问。

版权声明:本文由海阔天空发布,如需转载请注明出处。

本文链接:https://www.apull.net/html/20070617224.html

标签: 编程
分享给朋友:

相关文章

BT雷人的程序语言

BT雷人的程序语言

这个世界从来都不会缺少另类的东西,人类自然世界如此,计算机世界也一样。编程语言方面,看过本站《6个变态的C语言Hello World程序》的朋友们一定对BT和另类不会陌生,但那都是些小儿科,真正的BT和另类要是从语言级上来完成。让我们来看看其中一个比较另类的语言BrainFuck。看到这个程序语言的名字,请不要以为这是一个搞笑的语言,这是一个“严肃事情”,请大家用“最虔诚的态度”来阅读本文。BF语言介绍Brainfuck,是一种极小化的计算机语言,它是由Urban Mülle...

ASP.NET AJAX下alert弹出对话框

ASP.NET AJAX下alert弹出对话框

ASP.NET AJAX下alert弹出对话框定义:protected void ajaxMessage(Control control, string message) { ajaxMessage(control, message, "click"); } protected void ajaxMessage(Control control, string message, string key) { ScriptManager...

Win7 64位系统下IIS无法使用ODBC驱动 解决办法

Win7 64位系统下IIS无法使用ODBC驱动 解决办法

Win7 64位系统控制面板里的数据源里没有Microsoft OLE DB Provider for Jet和Microsoft Access Driver (*.mdb),在IIS里使用Access等ODBC数据库的网页无法正常显示。解决办法:打开Internet 信息服务(IIS)管理器,进入应用程序池,在应用程序上点右键选择高级设置,将启用32位应用程序后面的值改成True,确定后重启下应用程序。如下图:Win7下32位的ODBC数据源:找到c:\windows\sy...

C/C++声明

C/C++声明

介绍 曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明:我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则”。需要强调一下的是,复杂的C/C++声明并不是好的编程风格;我这里仅仅是教你如何去理解这些声明。注意:为了保证能够在同一行上显示代码和相关注释...