Para simplificar, considere que todas as letras são maiúsculas, sem acentos e sem cedilhas.
Considere também que há apenas um único espaço em branco entre nomes e que após o
último nome não há espaços em branco.
Para simplificar ainda mais, sempre que possível utilize as funções da biblioteca
string.h:
int strlen (char* s);
int strcmp (char* s, char *t);
char* strcpy (char* destino, char* fonte);
char* strncpy (char* destino, char* fonte, int n);
char* strcat (char* destino, char* fonte);
Exemplos de nomes:
Para “STEVEN PAUL JOBS” e “JOSE JOBS”, retorna “JOBS”;
Para “JOSE JOBS” e “CHICO ANYSIO”, retorna cadeia vazia “”;
Para “SILVA” e “SILVA”, retorna “SILVA”;
Para “” e “”, retorna cadeia vazia “”;
Em seguida, crie
o
módulo principal do programa
e
utilize
a
função
verificaSobrenomepara verificar se os sobrenomes de dois nomes informados pelo
usuário são iguais ou não. Use os exemplos acima para testar o seu programa.
3
. Crie o módulo ManipulaTexto(ManipulaTexto.h e ManipulaTexto.c). Este
módulo deve implementar uma função que receba como parâmetros uma string e um
caractere. A função deve retirar da string todas as ocorrências desse caractere. A função
deve obedecer ao seguinte protótipo:
char* retiraChar(char *str, char c);
Você deve alocar a nova string dinamicamente e copiar os caracteres da string original
para a área de memória alocada, exceto os caracteres que deverão ser retirados da string
original. A string alocada deve ter o tamanho exato para comportar os caracteres que
serão copiados, além do caractere nulo.
Neste mesmo módulo, escreva a função semrepeticaoque receba como parâmetros
uma cadeia de caracteres e retorna uma nova cadeia alocada dinamicamente do tamanho
necessário exato contendo a sequência original sem os caracteres repetidos em
sequência. Considere que a cadeia tem pelo menos um caractere. Caso não seja possível
criar a nova cadeia, a função deve retornar NULL.
Por exemplo, ao receber a cadeia “tteessteeee”, ela deve retornar “teste”.