Я пишу программу, в которой я прошу пользователя для длинного int. После того, как пользователь предоставил мне номер, я хочу добавить каждую цифру в это число, начиная со второй цифры. Теперь мой вопрос: как я могу выбрать любую другую цифру в long long int? (Язык C)Выбор каждого другого номера в int
ответ
Учитывая интегральный тип номера n
, n % 100/10
извлечет второй по последней цифре. Это выражение является пробным камнем для вашего знания приоритетов и ассоциативности операторов.
Вам необходимо использовать n % 10
и n/10
для извлечения и последующего удаления последней цифры, если число цифр в номере равно (найдите на этом сайте достаточные алгоритмы для подсчета количества цифр в номере) ,
n/100
удаляет последние две цифры.
Поместите вышеуказанное в цикл, и все готово.
Вы можете сделать: -
#include<stdio.h>
int main()
{
long real_Number,num,arr[100],count=0;
scanf("%ld",&real_Number);
do{
if(real_Number>99)
{
num=real_Number%100;
num=num/10;
arr[count]=num;
real_Number=real_Number/100;
++count;
}
if(real_Number<100)
{
arr[count]=real_Number/10;
break;
}
}while(real_Number>=10);
}
Примечание: Цифры, хранящиеся в массиве в обратном направлении, например 123456 приводит
обр [0] = 5, обр [1] = 3, arr [2] = 1;
Для печати: -
for(count; count>=0 ;count--)
{
printf("%ld",arr[count]);
}
эй, если вы найдете ответ полезным, не забудьте отметить его правильно:) – dreamBegin
Скажите мне причину, вы не можете использовать по модулю для извлечения цифр для этого ..... –
_There либо слишком много возможных ответов, или хорошие ответы были бы слишком для этого формата. Пожалуйста, добавьте детали, чтобы сузить набор ответов или изолировать проблему, на которую можно ответить в нескольких параграфах. –
Пожалуйста, покажите свои исследовательские усилия до времени. Сначала прочитайте страницу [Ask]. –