Advertisement
weldisalves

Lista 05 - exercício 22

Jun 28th, 2013
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.42 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. /* 22. Receba uma lista de nomes e coloque-os em ordem alfabética.
  5. Dica: use a função ‘strcmp’ da biblioteca ‘string.h’ para comparar alfabeticamente os nomes. A
  6. função strcmp recebe dois argumentos string e retorna zero se os dois forem iguais, um numero
  7. negativo se o primeiro é menor que o segundo e número positivo se o primeiro é maior do que o
  8. segundo.
  9. Use também a função ‘strcpy’ para copiar (duplica) uma string (vetor de caracteres) de um
  10. lugar para outro. O primeiro argumento é o vetor que irá receber os caracteres e o segundo
  11. argumento é o vetor que irá fornecer os caracteres. Obs.: o operador de atribuição ‘=’ não tem
  12. capacidade de copiar strings (vetor de caracteres), ele só copia um elemento por vez, tal como
  13. um número ou um caractere. */
  14.  
  15. int main()
  16. {
  17.     char nomes[6][30],aux[30];
  18.     int i,j;
  19.  
  20.     printf("\n Digite os nomes: \n");
  21.     for(i=0;i<6;i++)
  22.     {
  23.         fgets(nomes[i],30,stdin);
  24.         strtok(nomes[i],"\n");
  25.     }
  26.  
  27.     for(i=0;i<6;i++)
  28.     {
  29.         for(j=0;j<6;j++)
  30.         {
  31.             if(strcmp(nomes[j],nomes[j+1])>0)
  32.             {
  33.                 strcpy(aux,nomes[j]);
  34.                 strcpy(nomes[j],nomes[j+1]);
  35.                 strcpy(nomes[j+1],aux);
  36.             }
  37.         }
  38.     }
  39.  
  40.     for(i=0;i<6;i++)
  41.     {
  42.         printf("\n %s",nomes[i]);
  43.     }
  44.  
  45.     getchar();
  46.     return 0;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement