C言語十進制轉二進制代碼實例。本站提示廣大學習愛好者:(C言語十進制轉二進制代碼實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C言語十進制轉二進制代碼實例正文
用C言語完成將十進制轉化為二進制,並統計轉換後的二進制碼中1的個數。
#include <stdio.h> int binaryNum[16]; //寄存轉換後失掉的二進制碼 int count=0; //計數十進制整數被2除的次數 int oneCount=0; //失掉的二進制碼中1的個數 void main(){ int num; printf("輸出一個十進制的整數:"); scanf("%d",&num); while( (num/2) != 1 ){ //判別條件為:除以2之後的商不等於1 binaryNum[count] = num%2; //取余後的數字存入數組 num /= 2; //num = num/2; 停止下一輪的判別 count++; //此變量用來指定數組下標 } binaryNum[count+1] = 1; //最後一次除法做完當前,剩下的商一定是1,所以在最先手動添加一個1 printf("二進制數值為:"); //倒序打印出數組中的元素 // sizeof(整形數組)/sizeof(整形單個元素大小) = 數組的元素個數 for( int i=sizeof(binaryNum)/sizeof(int)-1; i>=0; i-- ){ if( binaryNum[i] == 1) oneCount++; //呈現一次1就累加 printf("%d",binaryNum[i]); } printf("\n共有%d個1\n",oneCount); }