【C言語】2進数10進数変換サンプル

プログラミング・Web開発

ずいぶん久しぶりに書いたC言語、2進数10進数変換のサンプルプログラム

IPv4アドレス程度(0〜256)程度を保障している簡易変換。

2進10進変換では2、10進2進変換では2を第1引数に設定することでスイッチさせている。

久々にx進変換なんて勉強しているから、チェックツールとして作成。

ずいぶん忘れてしまったようで、、でも初学だった大学時代から考えると体になじみやすい

#include <stdio.h>

int main(int argc, char *argv[])
{
int flg;
int decimal;
int binary = 0;
int base = 1;
int tmp = 0;
flg = atoi( argv[1] );
if(flg  == 2)
{
  binary = atoi( argv[2] );
  tmp = binary;
  /* 2進数を10進数に変換 */
  while(binary>0){
   decimal = decimal + ( binary % 10 ) * base;
   binary = binary / 10;
   base = base * 2;
    }
    /* 変換した10進数の出力 */
  printf("%08d\t%d\n",tmp,decimal);

}
else if(flg == 10)
{
 
  decimal = atoi( argv[2] );
  tmp = decimal;
  /* 10進数を2進数に変換 */
  while(decimal>0){
   binary = binary + ( decimal % 2 ) * base;
   decimal = decimal / 2;
   base = base * 10;
   }
 
  /* 変換した2進数の出力 */
  printf("%08d\t%d\n",tmp,binary);
}

return 0;
}

文書情報

記事タイトル
【C言語】2進数10進数変換サンプル
作成日
更新日
Source URL
https://papanda925.com/?p=623

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました