Я пишу метод, который превращает десятичное число в любое основание (2-36) и выводит соответствующие символы на экран. Метод decimalToSymbol()
работает правильно. Проблема в том, что в цикле while
я присваиваю ans[i]
для char
, и когда я пытаюсь напечатать его сразу после того, как он 0
. Я посмотрел в Интернете и обнаружил, что это правильный способ присвоения char
, но я не уверен, что происходит не так.
void writeRadixB(int decimalNumber, int radixB)
{
char ans[80] = "";
int i = 0;
while(decimalNumber!= 0){
printf("decNum: %d div by rB: %d equals %d\n", decimalNumber, radixB, decimalN
printf("decNum: %d mod by rB: %d equals %d or char %c\n", decimalNumber, radix
printf("i: %d\n", i);
decimalNumber = decimalNumber/radixB;
ans[i] = decimalToSymbol(decimalNumber%radixB);
printf("ans[%d] is %c\n", i, ans[i]);
i++;
}
printf("(%s) radix %d", ans, radixB);
}