Программа на C для преобразования восьмеричного числа в десятичное и наоборот

В этом примере вы научитесь преобразовывать восьмеричные числа в десятичные и наоборот вручную, создав пользовательскую функцию.

Чтобы понять этот пример, вы должны знать следующие темы программирования на C:

  • Функции C
  • C Пользовательские функции

Пример 1: Программа для преобразования десятичного числа в восьмеричное

 #include #include int convertDecimalToOctal(int decimalNumber); int main() ( int decimalNumber; printf("Enter a decimal number: "); scanf("%d", &decimalNumber); printf("%d in decimal = %d in octal", decimalNumber, convertDecimalToOctal(decimalNumber)); return 0; ) int convertDecimalToOctal(int decimalNumber) ( int octalNumber = 0, i = 1; while (decimalNumber != 0) ( octalNumber += (decimalNumber % 8) * i; decimalNumber /= 8; i *= 10; ) return octalNumber; ) 

Вывод

 Введите десятичное число: 78 78 в десятичном виде = 116 в восьмеричном.

Пример 2: Программа для преобразования восьмеричной системы в десятичную

 #include #include long long convertOctalToDecimal(int octalNumber); int main() ( int octalNumber; printf("Enter an octal number: "); scanf("%d", &octalNumber); printf("%d in octal = %lld in decimal", octalNumber, convertOctalToDecimal(octalNumber)); return 0; ) long long convertOctalToDecimal(int octalNumber) ( int decimalNumber = 0, i = 0; while(octalNumber != 0) ( decimalNumber += (octalNumber%10) * pow(8,i); ++i; octalNumber/=10; ) i = 1; return decimalNumber; ) 

Вывод

 Введите восьмеричное число: 116 116 в восьмеричном = 78 в десятичном. 

Интересные статьи...