Problema da palavra mágica (Jandson Nunes)
From AdonaiMedrado.Pro.Br
Revision as of 13:34, 29 April 2009 by 200.17.147.2 (Talk) (New page: <code lang="c"> #include <stdio.h> #include <stdlib.h> #include <string.h> int compara (const void * a, const void * b); int main (){ char palavra[101], *subPalavra1, *subPalavra2; int...)
#include <stdio.h> #include <stdlib.h> #include <string.h> int compara (const void * a, const void * b); int main (){ char palavra[101], *subPalavra1, *subPalavra2; int tamSubPalavra; scanf("%s",palavra); tamSubPalavra = strlen(palavra) / 2; subPalavra1 = (char *) malloc (tamSubPalavra * sizeof(char)); subPalavra2 = (char *) malloc (tamSubPalavra * sizeof(char)); strncpy(subPalavra1, palavra, tamSubPalavra); //copiando a primeira metade da palavra. subPalavra2 = palavra + tamSubPalavra; //apontando para segunda metade da palavra. qsort(subPalavra1, tamSubPalavra, sizeof(char), compara); //ordenando a primeira metade da palavra. strcmp(subPalavra1, subPalavra2) == 0 ? printf("S\n") : printf("N\n"); //comparando a primeira metade ordenada com a segunda metade. } int compara (const void * a, const void * b){ return strcmp(a, b); }