c语言输入一个十进制数,转换成对应的二进制

c语言输入一个十进制数,转换成对应的二进制

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

void reverse(char a[])
{
    int n = strlen(a);
    int i=0;
    int j = n-1;
    char t;
    while(i<j)
    {
        t = a[i];
        a[i] = a[j];
        a[j] = t;

        i = i+1;
        j--;
    }
    return;
}

void my_itoa(int x,char a[],int n)
{
    int i=0;
    while(x>0)
    {
       a[i]=x%n+'0';
       x = x/n;
       i = i+1;
    }
    if(i==0) 
    {
       a[i]='0';
       i = i+1;
    }
    a[i]='\0';
    reverse(a);
}

void dtob(int n)
{
    char a[124];
    my_itoa(n,a,2);
    printf("%sb\n",a);
    return;
}

int main()
{
    int n;
    while(scanf("%d",&n) != EOF)
    {
        dtob(n);
    }
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-02-27
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int num;
    printf("Enter a number:\n");
    scanf("%d",&num);
    int i;
    int a[6]={0};
    int k;
    int j;
    for(i=0;i<=5;i++)
 {
  a[i]=num%2;
  j=num/2;
  num=j;
 }
 int p;
 printf("Result:\n");
 for(p=5;p>=0;p--)
 {
  printf("%d",a[p]);
 }
    return 0;
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网