- シンプルな方法: C言語では、10進数から8進数への変換には「%o」というフォーマット指定子を使用します。以下は、変換の手順を示すサンプルコードです。
#include <stdio.h>
int main() {
int decimal = 42;
printf("10進数: %d\n", decimal);
printf("8進数: %o\n", decimal);
return 0;
}
このコードでは、変数decimal
に10進数の値を代入し、printf
関数を使用して10進数と8進数の形式で表示しています。%o
は8進数を表示するためのフォーマット指定子です。
- ループを使用した方法: もし、複数の10進数を8進数に変換したい場合は、ループを使用することもできます。以下は、ループを使用して複数の10進数を8進数に変換するサンプルコードです。
#include <stdio.h>
void decimalToOctal(int decimal) {
int octal = 0, i = 1;
while (decimal != 0) {
octal += (decimal % 8) * i;
decimal /= 8;
i *= 10;
}
printf("%dの8進数: %d\n", decimal, octal);
}
int main() {
int decimal1 = 42;
int decimal2 = 123;
int decimal3 = 9876;
decimalToOctal(decimal1);
decimalToOctal(decimal2);
decimalToOctal(decimal3);
return 0;
}
このコードでは、decimalToOctal
という関数を定義し、ループを使用して10進数を8進数に変換しています。decimal1
、decimal2
、decimal3
という3つの変数を8進数に変換して表示しています。
これらの方法を使用することで、C言語で10進数から8進数への変換を行うことができます。必要に応じて、他の数値や変数に適用することも可能です。