C: как разбить многозначное число на отдельные переменные? - PullRequest
23 голосов
/ 16 февраля 2012

Скажем, у меня многозначное целое число в C. Я хочу разбить его на однозначные целые числа.

123 превратится в 1, 2 и 3.

Как я могу это сделать, особенно если я не знаю, сколько цифр имеет целое число?

Ответы [ 12 ]

0 голосов
/ 01 ноября 2013

Я думаю, что ниже кусок кода поможет ....

temp = num;
while(temp)
{
    temp=temp/10;
    factor = factor*10;
}

printf("\n%d\n", factor);
printf("Each digits of given number are:\n");

while(factor>1)
{
    factor = factor/10;
    printf("%d\t",num/factor);
    i++;
    num = num % factor;
}
0 голосов
/ 16 февраля 2012

Последние цифры 123 - 123% 10. Вы можете сбросить последнюю цифру 123, выполнив 123/10 - используя целочисленное деление, вы получите 12. Чтобы ответить на ваш вопрос о том, «как я знаю, сколько у вас цифр» - попробуйте сделать это, как описано выше, и вы увидите, как узнать, когда остановиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...