Originariamente inviato da MItaly
Scorri entrambe le stringhe in parallelo fino a quando non trovi un carattere che differisce (o la fine di entrambe le stringhe); nel momento in cui hai trovato la posizione in cui iniziano a differire il risultato del confronto tra le due stringhe è determinato dal confronto dei due caratteri a questa posizione.
Butto giù un idea:
char a[max], b[max];
int i;
int ris;
i=0;
ris=0;

while(ris==0 and a[i]!='\0' and b[i]!='\0'){
if(a[i]>b[i]){
ris=1;
}
else{
if(a[i]<b[i]){
ris=-1;
}
i++;
}