当前位置: 代码迷 >> C语言 >> C语言编程
  详细解决方案

C语言编程

热度:256   发布时间:2008-03-26 13:14:49.0
C语言编程
各位大虾你们好,我是一个新手,现在有一道用C语言编程实现的题目遇到点困难。题目是用C语言编程实现二进制和十进制值之间的转换。
编程要求:任意输入一整数,输出对应的二进制数值,或者任意输入一二进制数值,输出对应的十进制整数。
希望各位高手给点参考。急……!!!
搜索更多相关的解决方案: C语言  二进制  整数  

----------------解决方案--------------------------------------------------------
#include "stdio.h"
int N(int x)
{
    int a[100];
    int i,j;
    for(i=0;x!=0;i++)
    {
        a[i]=x%2;
        x=x/2;
    }
    for(j=i-1;j>=0;j--)
    {
        printf("%d",a[j]);
    }
}
void main()
{
    int x;
    scanf("%d",&x);
    N(x);
}

这个是十进制转化成二进制的
----------------解决方案--------------------------------------------------------
进制之间的转化就是利用数学的方法算出来的
用数组做能较容易解
----------------解决方案--------------------------------------------------------
/*十进制转二进制*/
#include<stdio.h>
void tobits(int);
int main(void)
{
    int n;
    printf("输入一个整数:");
    scanf("%d",&n);
    tobits(n);
    printf("\n");
    return 0;
}
void tobits(int n)
{
    int i;
    char bits[8*sizeof(int)];
    for(i=8*sizeof(int)-1;i>=0; i--,n>>=1)
        bits[i]=(01&n)+'0';    
    bits[8*sizeof(int)]='\0';
    puts(bits);
}
----------------解决方案--------------------------------------------------------
  相关解决方案