Faça um programa onde o usuário digita 3 informações a respeito de uma pessoa: Nome, endereço e telefone. Concatene essas três informações em uma única string e faça uma contagem de quantas letras do alfabeto estão presentes nesta string (considerando as redundâncias) e de dígitos numéricos. Os espaços e os caracteres de pontuação devem ser ignorados (as funções de contagem já fazem isso).
Soluções para a tarefa
Resposta:
Seguem exemplos para te ajudar:
#include <ctype.h>
#include <stdio.h>
#include <string.h>
char string1 [ ] = "ANA CLAUDIA";
char string2 [ ] = "RUI BARBOSA, 234";
long int numero = 2340912;
char buffer [ 64 ];
int main ( void )
{
int letras = 0, numeros = 0;
int contador = 0;
sprintf(buffer, "%s %s %Lu", string1,string2,numero);
for (contador = 0; contador < strlen ( buffer ); contador++)
{
if ( isalpha ( buffer [ contador ] ) == 1 ) letras++; else
if ( buffer [ contador ] >= '0' && buffer [ contador ] <= '9' ) numeros++;
}
return 1;
}
//===============================================================
//===============================================================
#include <ctype.h>
#include <stdio.h>
#include <string.h>
char string1 [ ] = "ANA CLAUDIA";
char string2 [ ] = "RUI BARBOSA, 234";
char string3 [ ] = "234-0912";
char buffer [ 64 ];
int main ( void )
{
int letras = 0, numeros = 0;
int contador = 0;
sprintf(buffer, "%s %s %s", string1,string2,string3);
for (contador = 0; contador < strlen ( buffer ); contador++)
{
if ( isalpha ( buffer [ contador ] ) == 1 ) letras++; else
if ( buffer [ contador ] >= '0' && buffer [ contador ] <= '9' ) numeros++;
}
return 1;
}
Dica:
Foi usada a função denominada ISALPHA (funciona tão somente com letras maiúsculas), já o campo do telefone apenas deve ter números.
Bons estudos!