Показать сообщение отдельно
Старый 04.07.2003, 00:39     # 10
Machine
Guest
 
Сообщения: n/a

alexey_ma
Цитата:
check_alpha("12AbBC54","AABBCC")=1
Помоему должен быть 0, поскольку порядок не тот, во второй строке не подстроки ABC.
Порядок тот: A, B, C. Имеется в виду, что между ними могут быть любые символы.

Очень сложно ты написал. По-моему работать не будет, хотя проследить алгоритм мне неподсилу.

Цитата:
return check_alpha(s1,ss2);
А энто зачем?

Вот мой вариант:
Код:
int f(const char *s1, const char *s2)
{
    if(!s1 || !s2)
        return 0;
  
    while(*s1 != '\0'){
    
        if(!isupper(*s1)){
            s1++;
           continue;
        }
    
        while(*s2 != '\0'){

            if(*s2 == *s1)
                break;
      
            s2++;
        }
    
        if(*s2 == '\0')
            return 0;
    
        s1++;
    }

    return 1;
}