Procurar uma letra dentro de um conjunto de caracteres

4 respostas
Y

eu não estou conseguindo procurar uma letra dentro de uma string.

* Objetivo do programa: criar uma matriz de 4 linhas e 10 colunas. ler até que o usuario digite a palavra fim. Armazenar as palavras de acordo com os criterios abaixo: a) 1º linha as palavras que iniciam pela letra A. b) 2º linha as palavras que terminam com a letra R. c) 3 º linha as palavras que possuem pelo menos uma letra H. d) 4º linha as palavras que não possuem nenhuma letra S. Palavras quenão satisfazem as condições acima deverão ser desconsideradas. As linhas da matriz são ciclicas. * Componentes do grupo: Yuri Fagundes. e Filipe Lucas S. de Oliveira * Data de entrega do arquivo fonte: 18/06/2008 */
#define LIN 4
#define COL 10
#define TAM 20
#include <stdio.h>
int main (void)
{
    int l, c;
    char matriz[LIN][COL][TAM], fim[]="fim", palavra[TAM];
    
    fflush(stdin);
    
    do{
         printf("Informe uma palavra: ");
         gets(palavra);

              for(l=0; l<LIN; l++){
                   for(c=0; c<COL; c++){
                        if(strchr(palavra, 'a'))
                            strcpy(matriz[0][c],palavra);
                        if(strrchr(palavra, 'r'))
                            strcpy(matriz[1][c],palavra);
                        if(strstr(palavra, 'h'))
                            strcpy(matriz[2][c],palavra);
                        if(strstr(palavra, 's')==false)
                            strcpy(matriz[3][c],palavra);
                   }
              }
    }while(strcmp(palavra, fim));
    for(l=0; l<LIN; l++){
             printf("\n");
        for(c=0; c<COL; c++){
            printf("%c",matriz[0][c]);
        }
    }
          
    system("pause");
    return 0;
}

4 Respostas

Y

o programa mostra que tem um erro na linha 22 24

T

strstr requer como segundo parâmetro uma string (“h”), não um char (‘h’).
Portanto, compre uns óculos mais fortes e procure essas diferenças!

P

E outra coisa

Em nome de Jesus, tire essa pancada de IF ai. Pra outro coder visualizar dá até náuseas.

peczenyj

expressões regulares:

Começa com A ?

^a

Termina com Z ?

z$

Tem uma letra L ?

l (letra L minuscula)

Não tem letra q ?

^[^q]*$

basta setar pra ignorecase se necessário. ver javadoc do java.util.regex

Criado 2 de julho de 2008
Ultima resposta 2 de jul. de 2008
Respostas 4
Participantes 4