十进制整数转换二进制整数 逆序输出

十进制整数转换为二进制整数采用除2取余,逆序排列法
当时我最烦的是这个逆序输出,随着不断的学习,掌握到一些逆序输出的方法。操作数组就是一种很好的方法
如下:

//十进制转换二进制
#include
#include
int main(void)
{
      printf("Please enter decimal integer:");
      int dec,i,a[50];
      scanf("%d",&dec);
      for(i=0;dec>0;dec/=2,i++)
      {
          a[i]=dec%2;//将余数正向存入数组
      }
      i--;
      printf("Binary is ");
      for(;i>=0;i--)//反向输出数组
      {
          printf("%d",a[i]);
      }
      system("pause");
      return 0;
}

当然,如果想实现多组输入输出,可将其嵌套在一个循环里

//十进制转换二进制
#include
#include
int main(void)
{
    printf("Please enter decimal integer:");
    int dec,a[50],i;
    while(scanf("%d",&dec))
    {
        for(i=0;dec>0;dec/=2,i++)
        {
            a[i]=dec%2;
        }
        i--;
        printf("Binary is ");
        for(;i>=0;i--)
        {
            printf("%d",a[i]);
        }
        printf("\nPlease enter decimal integer:");
    } 
    system("pause");
    return 0;
}

作为一枚初学者,欢迎各位大佬指出错误。

你可能感兴趣的:(十进制整数转换二进制整数 逆序输出)