十进制转化的二进制反转后十进制输出

来源:互联网 发布:uc监控软件下载 编辑:程序博客网 时间:2024/05/14 15:54
#include <stdio.h>#include<math.h> void main(){      int i, length, t=0, count =0, a[32];             //count为计数,length记录二进制位数   long int b;   printf("请输入一个正整数:");  scanf("%d",&b);        while( b != 0 )                                //十进制转二进制   {            i=b%2;   a[count]=i;   count++;   b=b/2;  }     length = count;  i = length;    printf("反转后的二进制为:");  for( count = 0; count < length; count++)      //输出反转后的二进制   {    printf( "%d", a[count]);  }  printf("\n");     for( count = 0; count < i ; count++,i-- )     //二进制反转   {      t = a[count];   a[count] = a[i-1];  a[i-1] = t;  }     for( count = 0; count < length; count++ )     //二进制转化为十进制   {    b += a[count] * pow(2,count);  }  printf("二进制反转后的十进制为:%ld",b);}

0 0