dev c++ 中整数到二进制的转换

问题描述 投票:0回答:1

我只了解了gets、puts、printf、scanf、if、else if、for循环、while循环和数组。如何解决这个问题呢 ?我只使用基本的 C++。

#include <stdio.h> 
int main() { 
   int i,r,j,num,binari[8]; 
   scanf("%d",&num); 
   for(i=0;num>=0;i++) { 
      if(num%2==1) 
         binari[i]=num%2; 
      if (num%2==0) 
         { binari[i]=num%2; } 
      num=num/2; 
    } 
    for (j=i;j>=0;j--) {
       printf("%d",binari[j]); 
    } 
    system("pause"); 
    return 0; 
}
c++ binary int type-conversion
1个回答
0
投票

将整数值转换为其ascii二进制代码,有很多方法。我使用手动方式(与在纸上进行的方式相同):

int DecToBin(int N) {
int multiplyer = 1; // fot arranging digits. like : 1*(once digit) + 10*(tens digit) + ...

int finalBin = 0; // final output

 // loop for continuous division by 2 , to find remainders and making finalBin number using the digits:
while (N >=1){     
    int digit = N % 2; // getting the binARY DIGIT.

    N /= 2;  // N = N/2 for next iteration

    finalBin += digit * multiplyer; // NUMBER = ONCE*1 TENS*10 THOUSANDS*1000 + ...

    multiplyer *= 10; // 1 10 10 1000 ...
}

return finalBin;

}

© www.soinside.com 2019 - 2024. All rights reserved.