Ir ao conteúdo
  • Cadastre-se

C Questão sobre o uso de String


Posts recomendados

Olá, estou realizando um programa em linguagem C e está apresentando o seguinte erro: Verifique palíndromos que possuem palavras sem espaços. Verifique palíndromos de palavras com espaços. Lembre de ignorar a diferença entre maiúsculas e minúsculas.

Já realizei as alterações que estavam ao meu alcance, mas não conseguir. Poderiam me ajudar?

 

Meu código 

 

#include <ctype.h>
#include <stdio.h>
#include <string.h>

int main() {
char entrada[256];
char copia[256];
int i, j, qtd;
char *tmp;

scanf( "%d", &qtd );
while( qtd > 0 ) {
    scanf( " %[^\n]", entrada );

    i = 0;
    while( i < strlen( entrada ) ) {
        if( entrada[i] == ' ' ) {
            for( j = i; j < strlen( entrada ); j++ ) {
                entrada[j] = entrada[j + 1];
            }
        } else {
            i++;
        }
    }

    for( i = 0, j = strlen( entrada ) - 1; i < strlen( entrada ); i++, j-- ) {
        entrada[i] = tolower( entrada[i] );
        copia[i]   = entrada[j];
    }
    copia[i] = '\0';

    printf( "%s\n", strcmp( copia, entrada ) == 0 ? "SIM" : "NAO" );
    qtd--;
}

return 0;
}

KbWLIfd_d.jpg?maxwidth=640&shape=thumb&f

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

30 minutos atrás, Simon Viegas disse:

@programadornovatoc, qual o enunciado completo da questão?

 

Um palíndromo é uma palavra ou frase que tenha a propriedade de poder ser lida tanto da direita para a esquerda como da esquerda para a direita. Por exemplo, as strings "aaaaa", "1221", "bbaabb" são palíndromos, entretanto a string "chef" não é um palíndromo porque se lermos da direita para a esquerda, obtemos "fehc" que não é a mesma coisa que "chef".

 

Ignore as diferenças entre maiúsculas e minúsculas.

 

Para os casos onde é dada uma frase, você deve ignorar os espaços. Por exemplo, a frase "A base do teto desaba" é considerada um palíndromo. Ao lê-la da direita para a esquerda, você obterá: "abased otet od esab A". Perceba que, com exceção do espaço, a sequência de caracteres é a mesma da frase original.

 

Faça um programa que indique se uma string dada é um palíndromo ou não.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!