/* Ordenar vetor alfabeticamente*/ # include # include # include # define N 10 int main (){ char nome[N][30], copia[30]; int i, j; /* A variável nome armazena N nomes com até 30 caracteres. A variável copia é apenas uma auxiliar que recebe 30 caracteres */ //Entrada dos nomes for ( i = 0; i < N; i ++){ printf("\nNome [%i]: ", i+1); gets ( nome[i] ); } //A troca alfabeticamente for ( i = 0; i < (N-1) ; i ++ ) for( j = i + 1; j < N; j ++ ) /* strcmp retorna = 0, caso a = b retorna > 0, caso a > b retorna < 0, caso a < b */ if ( strcmp( nome[i], nome[j] ) > 0 ){ /* strcpy copia de string strcpy ( VarRecebe, VarEntrega ) */ strcpy ( copia, nome[i] ); strcpy( nome[i], nome[j] ); strcpy( nome[j], copia) ; } // só mostrar a matriz de nomes for (i = 0; i < N; i++) printf("\n%s", nome[i]); return 0; }