Я боролся с проектом, поэтому мне нужно проверить количество 4 цифр на C, я думал об использовании символов, так как мне нужно проверить 0001, но нет 1. Тогда, я думаю, мне нужно чтобы преобразовать это в целое число для работы с ним. Кто-нибудь может мне помочь?Проверка длины цифр и числа
printf("Enter a number 0 to end:");
gets(str);
while (strcmp(str, "0"))
{
j = 0;
k = 0;
flag = 0;
while (*(cad + j)) {
if (!isdigit(*(cad + j)))
flag = 1;
j++;
k = ++;
}
if (!flag && k == 4) {
i = atoi(cad);
q = newnode();
q->num = i;
stack(&pi,q);
}
else
printf("Wrong number");
printf("Enter a number 0 to end:");
gets(str);
}
Йор код был нечитаемым. И не используйте 'gets()' он устарел. Вы читали, что делает 'strcmp()' делает? –
Эта часть 'мне нужно проверить 0001, но нет 1.' для меня непонятно. можете ли вы привести пример, который показывает, где он должен завершиться неудачно и где он должен быть успешным? – milevyo
, если вы введете 1, должно быть недействительным, если вы введете 0001 shoudl, чтобы быть допустимым, поэтому я использую строку char для проверки числа по номеру –