添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
printf ( " 输入一个二进制数: " ) ; scanf ( " %lld " , & n ) ; printf ( " 二进制数 %lld 转换为十进制为 %d " , n , convertBinaryToDecimal ( n ) ) ; return 0 ; int convertBinaryToDecimal ( long long n ) int decimalNumber = 0 , i = 0 , remainder ; while ( n != 0 ) remainder = n % 10 ; n /= 10 ; decimalNumber += remainder * pow ( 2 , i ) ; ++ i ; return decimalNumber ;

输出结果为:

输入一个二进制数: 110110111 二进制数 110110111 转换为十进制为 439

实例 - 十进制转换为二进制

#include < stdio.h > #include < math.h > long long convertDecimalToBinary ( int n ) ; int main ( ) int n ; printf ( " 输入一个十进制数: " ) ; scanf ( " %d " , & n ) ; printf ( " 十进制数 %d 转换为二进制位 %lld " , n , convertDecimalToBinary ( n ) ) ; return 0 ; long long convertDecimalToBinary ( int n ) long long binaryNumber = 0 ; int remainder , i = 1 , step = 1 ; while ( n != 0 ) remainder = n % 2 ; printf ( " Step %d: %d/2, 余数 = %d, 商 = %d \ n " , step ++, n , remainder , n / 2 ) ; n /= 2 ; binaryNumber += remainder * i ; i *= 10 ; return binaryNumber ;

输出结果为:

输入一个十进制数: 100 Step 1: 100/2, 余数 = 0, 商 = 50 Step 2: 50/2, 余数 = 0, 商 = 25 Step 3: 25/2, 余数 = 1, 商 = 12 Step 4: 12/2, 余数 = 0, 商 = 6 Step 5: 6/2, 余数 = 0, 商 = 3 Step 6: 3/2, 余数 = 1, 商 = 1 Step 7: 1/2, 余数 = 1, 商 = 0 十进制数 100 转换为二进制位 1100100

C 语言实例 C 语言实例

scanf_s("%lld", &n); //用scanf()在Visual Studio 2019 会警告返回值被忽略 while (n) { i = n % 10; //这个说错了,2和10都可以,用10会比较好 if (i) { //判断i是否为0 count += ppow(2, k); k++; //k做为2的次方数,每次n /= 10 就+1 n /= 10; printf(" 转成10进制= %d",count); return 0; }
菜菜鸟